为什么我的编译器指令定义无法识别? (迅速)

时间:2016-10-26 06:54:55

标签: ios swift compiler-directives

我有3个目标。让我们说TargetA,TargetB和TargetC。我在Targets>中为每个目标添加了一个不同的编译器指令。目标名称>构建设置> Apple LLVM 7.1 - 自定义编译器标志>其他C标志>调试&发布。

enter image description here

我将-dTargetA放在TargetA上,-dTargetB放在TargetB上,-dTargetC放在TargetC上。然后我在AppDelegate的didFinishLaunchingWithOptions上有这段代码:

#if TargetA
    print ("TargetA");
    #else
    #if TargetB
        print ("TargetB");
        #else
             #if TargetC
             print ("TargetC");
             #else
             print ("Not Recognised");
        #endif
    #endif
#endif

但是当我运行它时,我在输出控制台上看到“Not Recognized”,即使我从任何目标运行。怎么了?感谢。

1 个答案:

答案 0 :(得分:0)

哦,没关系。事实证明我把它放在了错误的地方。我应该把它放在Swift自定义编译器标志中,而不是C或C ++标志。但是这么多答案告诉我要放入C编译器标志......