我创建并应用了一个简单的 .xcconfig 文件,其中包含
GCC_PREPROCESSOR_DEFINITIONS[config=Debug] = FOODEBUG
GCC_PREPROCESSOR_DEFINITIONS[config=Release] = FOORELEASE
和 main.cpp 包含
#include <iostream>
// This warning IS shown
#if DEBUG
#warning DEBUG is set to 1
#endif
// This warning IS NOT shown
#ifdef FOODEBUG
#warning FOODEBUG is set
#endif
// This warning IS NOT shown
#ifdef FOORELEASE
#warning FOORELEASE is set
#endif
int main(int argc, const char * argv[])
{
// insert code here...
std::cout << "Hello, World!\n";
return 0;
}
现在我想知道为什么在 main.cpp 中,FOODEBUG 和 FOORELEASE 都没有定义??!
正如预期的那样,构建设置显示了我的 .xcconfig 文件的两行(“Any Architecture | Any SDK”),但实际上并未使用它们。
我怎么能做到这一点?