我刚刚在Xcode 4.3.3上创建了一个新的cocoa项目。 Apple LLVM编译器3.1设置的预处理器宏分配了DEBUG = 1 $(继承)值。我删除它并再次添加它,现在我在编译时遇到错误:
clang:错误:没有这样的文件或目录:'DEBUG = 1'
我搜索项目设置的值,我看到该值也在“其他警告标志”中定义
我的问题是:
DEBUG
与DEBUG=1
之间有什么区别?$(inherited)
做什么?答案 0 :(得分:1)
首先,如果您收到编译错误,那么您很可能将宏放回项目设置中的错误位置。请确保您已将其放入Debug
部分Preprocessor Macros
项下的Apple LLVM compiler x.x - Preprocessing
配置分支。
对于您的其他问题:
DEBUG
所以它基本上是空的。您可以测试它是否存在,但不是很多。第二个将它设置为1
,以便预处理器可以实际进行比较,如#if DEBUG && SHOULD_DIE_ON_ERROR
,如果应用程序遇到某些验证错误,您可能会中止,但仅当SHOULD_DIE_ON_ERROR
设置为1
且$(inherited)
1}}并且您正在调试模式下运行。