#ifndef 没有起效果?

下面代码是预期效果

#define TEST YES
#ifndef TEST
#define TEST NO
#endif

....

// 打印结果  1
NSLog(@"TEST : %d",TEST);

下面是在pch中使用的结果

//xxx.pch
#define TEST YES

//yyy.h
#ifndef TEST
#define TEST NO
#endif

// // 打印结果  0
NSLog(@"TEST : %d",TEST);

请问这是什么情况?
#define TEST YES 是强行定义 TEST 为什么结果会是NO呢?

阅读 3.1k
1 个回答

猜测你的xxx.pch没有在build setting中配置好路径,如果pch生效TEST是1。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题