在C/C++ / Objective-C中,可以使用编译器预处理器定义宏。
此外,您可以使用编译器预处理程序包含/排除代码的某些部分。
此外,您可以使用编译器预处理程序包含/排除代码的某些部分。
#ifdef DEBUG // debug only code #endif
在Swift中有类似的解决方案吗?
是的,你可以做到。
在Swift中,你仍然可以使用“#if /#else /#endif”预处理器宏(尽管更多的约束),如Apple docs.这里有一个例子:
#if DEBUG let a = 2 #else let a = 3 #endif
现在,你必须在其他地方设置“DEBUG”符号。在“Swift编译器 – 自定义标志”部分,“其他Swift标志”行中设置。您可以使用-D DEBUG条目添加DEBUG符号。
像往常一样,您可以在Debug或Release中设置不同的值。
我在实际代码中测试它,它的工作原理;它似乎没有在操场上认可。
你可以阅读我的原始帖子here。
重要说明:-DDEBUG = 1不工作。只有-D DEBUG工作。似乎编译器忽略具有特定值的标志。