首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

#ifndef #define #endif跟直接在工程属性的与处理器定义中增加相应的定义不一样?前者不能达到想要的效果,为什么呢?该怎么解决

2012-02-04 
#ifndef #define #endif跟直接在工程属性的与处理器定义中增加相应的定义不一样?前者不能达到想要的效果,

#ifndef #define #endif跟直接在工程属性的与处理器定义中增加相应的定义不一样?前者不能达到想要的效果,为什么呢?
#ifndef M_WIDE_CHAR
#define M_WIDE_CHAR
#endif

这样好像无效

但在工程属性的预处理器定义增加M_WIDE_CHAR,去掉上面这段代码,就可以达到预期的效果

这两个有什么区别吗?

[解决办法]
可能有些文件没include到这段代码,则M_WIDE_CHAR在该文件中就没定义

预处理器定义增加M_WIDE_CHAR是全局的,所有文件都能看到这个宏

热点排行