是谁打来的? —宏

是缩写名称。 在代码中使用该名称时,它会被相应的内容替换。 在C语言中,我通常使用宏来定义特殊的类名并处理一些函数。

然后,我可以轻松显示质量检查团队的调试信息!

另外,我可以在编译器标志中添加宏。

在编译器标志中,格式为-D 。 为什么在标志中使用-D? -D标志用于定义 (#define)值。 llvmgcc / llvmg ++ (LLVM C编译器/ LLVM C ++编译器)中进行了预处理 。 这就是为什么我使用#ifdef而不是#if

为什么我不能迅速找到我的宏?

如果仅在c标志中定义了宏,则应在Swift标志中定义宏。 也许您已经注意到c标志中的宏已由llvmgcc进行了预处理。 在Swift部分中,LLVM使用LLVMSwift定义宏并编译Swift代码。 因此,不要忘记在Swift Custom Flags中添加宏!

参考:

  1. https://www.quora.com/What-are-macros-in-C
  2. https://stackoverflow.com/questions/4508898/why-we-keep-d-in-other-c-flags-in-xcode