预处理器宏无法按预期工作
Preprocessor Macro not able to work as expected
我在 Main 目标上定义了 "Preprocessor Macro" FREEVERSION=0,在 Lite 目标上定义了 FREEVERSION=1。
然后在 AppDelegate
#ifdef FREEVERSION
@import GoogleMobileAds;
#endif
当我为 Lite 目标构建时,它运行正常。但是当我为主要目标构建时,它说导入时出错。我希望编译器在 select Main 目标时忽略这些。但是 no.Why?
我想我是在回答我自己的问题。
#ifdef
检查宏是否存在。但不是价值。在这种情况下,两个目标都定义了 FREEVERSION,因此两者的计算结果都为真。要修复它,只需完全删除 Main 目标中的条目 FREEVERSION=0。价值并不重要。
我在 Main 目标上定义了 "Preprocessor Macro" FREEVERSION=0,在 Lite 目标上定义了 FREEVERSION=1。
然后在 AppDelegate
#ifdef FREEVERSION
@import GoogleMobileAds;
#endif
当我为 Lite 目标构建时,它运行正常。但是当我为主要目标构建时,它说导入时出错。我希望编译器在 select Main 目标时忽略这些。但是 no.Why?
我想我是在回答我自己的问题。
#ifdef
检查宏是否存在。但不是价值。在这种情况下,两个目标都定义了 FREEVERSION,因此两者的计算结果都为真。要修复它,只需完全删除 Main 目标中的条目 FREEVERSION=0。价值并不重要。