【发布时间】:2012-12-29 02:39:35
【问题描述】:
在我的代码中,我有一些条件:
#ifndef SOME_FLAG
// ...
#endif
在 Xcode 项目中,在 target->Build settings->preprocessor macros 下:
我向 Debug 和 Release 以及我之前设置的 AppStore 添加了一个预处理器宏: SOME_FLAG
(DEBUG 已经设置了DEBUG=1 DEBUG=1(作为一个条目?!!),我添加了另一个 SOME_FLAG 条目。
但这对我不起作用。 #ifndef #endif 块仍然存在!我做错了什么?
【问题讨论】:
-
如果在所有配置设置中都使用该变量,为什么不在 .pch 文件中定义它?
-
你的意思是你的#ifndef 块每次都会被编译??
-
这不是按预期工作吗? #ifndef 表示“如果未定义”,但您为调试和发布版本定义了 SOME_FLAG,因此定义了 SOME_FLAG。
-
为什么不在 .pch 中?是的,我也可以这样做。也许这是一个更好的主意。 #ifndef 每次都会编译,是的。我想保留代码以便我可以看到,但我真的不希望它执行。 (它是开源代码,所以我想看看我改变了什么)@zpasternack:如果它被定义,那么它不应该进入。但它确实。
-
您找到解决方案了吗? (我也有同样的问题)
标签: ios xcode preprocessor