wxdebug.cpp(11) : warning C4603: “_WINDLL”: 未定义宏或在预编译头使用后定义发生改变

Posted on 2011-07-13 00:40 皓月云天 阅读(396) 评论(0)  编辑 收藏

解决方法

属性=》配置属性=》预编译头=》不使用预编译头

如果预编译头文件被正确使用时,它确实大大提高我们编程的效率(你工作中,有多少时间是在等编译完成?很多吧,这个时候一般都很无聊,无奈,浪费时间)。但是他太容易用错了. 下面是几种常见的错误用法.

1) 在预编译头文件里include自己的头文件(当然, 如果你的头文件不经常变化, 也可以)

原因:自己的头文件一般会经常变, 便利后导致预编译的东东重新编译, 降低了编译速度.

2) 在其他的头文件里也include 预编译头文件

假设你的其他头文件也include了预编译头文件, 如果别人引用你的这个头文件又没有设置成预编译头文件, 那引用你头文件的这个人就煎熬了.

原 因:由于你用到的.h文件里include了预编译头文件,他在他本身的project里,vs能够判断的出他是预编译头,也能找的到需要的pch, pdb文件。所以对写这个.h文件的人没影响。但是你作为他的客户,你工作在你的project下,你include了他的h头文件,而这时vs判断不出 他的头文件里include的stdafx是预编译头文件,做普通文件编。那可想而知,他的stdafx里如果有import外面大型的库(如 inventor的tlb,非常慢,我们犯了这个错),那编译速度简直是煎熬。最要命的是,以后你做任何简单的修改都要重编,这和预编译解决的问题恰好相 反了。

下面给出一个使用预编译头文件的操作步骤, 享受一下预编译头文件给我们带来的编译速度的提升:

1) 添加一个stdafx.h文件(名字随便取, 这里用了VS默认提供的名称), 在这个.h文件里include要使用的头文件(一般是外部的库, 自己写的不常变的头文件也可以加进来)

2) 添加一个stdafx.cpp文件, 并include "stdafx.h"

3)项目属性-->c/c++-->Precompiled设置为Use Precompiled Header, stdafx.h

4)stdafx.cpp属性-->c/c++->Precompiled设置为Create Precompiled Header, stdafx.h

warning C4603: “_WINDLL”: 未定义宏或在预编译头使用后定义发生改变相关推荐

  1. 未定义宏或在预编译头使用后定义发生改变

    问题:在运行时提示类似 warning C4603: "SQ": 未定义宏或在预编译头使用后定义发生改变 一类的异常. 解决方法:调整以下代码前面的顺序 #define SQ(y) ...

  2. eslint常用设置;eslint关闭驼峰命名;eslint关闭全等于===校验;eslint关闭未定义变量报错;eslint关闭声明后未使用变量报错;eslint关闭单闭合标签校验;

    详细配置eslint操作可看此篇 eslint各种限制规则可看此篇 在 .eslintrc.js 文件修改规则:0关闭 1警告 2报错 module.exports = {root: true,par ...

  3. datatype未定义是什么意思_vue.js一直提示未定义

    .sum_price); } temp_status = 1; }else{ for(var i=0;i vm.list.status = 0; } vm.total_price = 0; temp_ ...

  4. g linux 未定义的引用_linux – 链接到静态库后的未定义引用

    我写了一个简单的程序来测试xdotool是否能满足我的要求. (嗯,不是真的.我的第一步是确保我是否可以调用xdotool库.) #include #include using namespace s ...

  5. java构造函数未定义_错误:隐式超级构造函数Person()未定义.必须显式调用另一个构造函数....

    今天写程序的时候发现了一个错误: public class Test { public static void main(String[] args) { Student s1 = new Stude ...

  6. c语言ok未定义标识符,C语言中宏的相关知识 - osc_y7ckpzr9的个人空间 - OSCHINA - 中文开源技术交流社区...

    2019/04/27 16:02 1.宏的定义:宏定义就是预处理命令的一种,它允许用一个标识符来表示一个字符串.格式如下: #define name(宏名) stuff(字符串) 本质就是使用宏名去替 ...

  7. matlab拟合未定义函数或变量,关于matlab的未定义函数或变量的问题

    1.首先需要知道matlab中查看数据类型函数是class,可以先在命令行窗口中help class.2.在命令行窗口中输入"a=123 class(a)".3.按回车键可以看到变 ...

  8. VS2022写Qt代码遇到的问题之 C2504 “xxx”: 未定义基类 (编译源文件

    今天写代码的时候遇到一个这个问题,一直报错,说未定义基类,实际上是定义了的,但是就是报错.我分析问题的思路记录一下.这个问题 这个是微软给的提示.我明明定义了但是就是没找到. 后来我分析应该是编译器在 ...

  9. 编译的时候所使用的动态库中出现错误:未定义的引用

    1.使用makefile编译的时候,出现错误如下: 如上图所示,是在动态库libicdbapi.so中出现了未定义错误,既然是未定义错误,说明sqlprct.....sqlnult这5个符号是外部符号 ...

最新文章

  1. python新手教程 从零开始-从零开始的python之路-Python基础(二)
  2. Apache Hadoop 入门教程第一章
  3. 湊湊很好,但依旧“难撑”呷哺呷哺的野心
  4. 航测大数据量处理_揭秘航测局“航空摄影质量自动检查系统”的“黑科技”
  5. discuz集思街淘宝客模板
  6. 一个比较不错的swapidc模板源码
  7. 在填写表单中输入全角数字的解决方案
  8. Bailian2819 W的密码【密码+模拟】
  9. 申请高德地图开发者key
  10. ERP系统之结存功能
  11. 3款好用的文件管理软件
  12. 针式PKM适合对“大量的资料”进行系统性管理
  13. kingcms php 下载,KingCMS 企业版_KingCMS官方网站
  14. Android 关于NBA项目 SprintNBA
  15. vaex库使用方法python_Python秒开100G数据是怎么办到的?
  16. 追女生要经过哪几个阶段?告诉你追女生经历的具体阶段!
  17. 数据结构算法书籍推荐(转贴)
  18. 图文下单系统,图文下单软件,印刷系统,印刷软件
  19. 利用遗传算法进行高频因子挖掘(一)
  20. MATLAB显示:由于未找到因为输出,无法播放音频

热门文章

  1. 今天,才明白个人所得税的算法!
  2. asp.net确认对话框_在ASP.NET或Trace.Fail中防止服务器端对话框被认为有害
  3. python飞机大战概要设计_飞机大战详细设计文档 第三次修改
  4. Estore电子商城 --- 知识的整合
  5. [estore基础知识] 之(三)【Spring 体系】
  6. 有道云笔记,为知笔记,石墨文档,CSDN对比
  7. linux 基础命令(ps、kill、vim、grep等)
  8. 主要内容: 本文提出了一种基于(ppo)的微电网最优调度方法。 该方法采用强化学习(RL)来学习调度策略,并积累相应的调度知识。 同时,引入ppo模型,将微电网调度策略动作从离散动作空间扩展到连续动作
  9. 动静分离java html_动静分离-前后端分离部署
  10. Swift 处理保留一位小数,保留两位小数处理