我在全局标头中有以下代码,因此我可以在编译时做出决定:
enum {
MyStyleA,
MyStyleB,
MyStyleC
};
#define STYLE MyStyleB
在各种源文件中,我包含此标头并执行以下操作:
#if STYLE == MyStyleC
doSomething();
#endif
问题是,doSomething()
即使我在标题中定义STYLE
,也肯定会执行!MyStyleB
知道这里出了什么问题吗?
(我承认我不是C预处理器专家。)