有没有办法根据编译设置创建if
语句?我有一个访问基于Web的API的应用程序,当在调试模式下编译时,我希望它使用私有测试版,但是当我编译发布时,我希望它使用API的公共实时版本。
目前我只有NSString
持有网址。
答案 0 :(得分:2)
通常,对于这类事情,您将使用预处理程序指令:
#ifdef DEBUG_MODE
// connect to beta version
#else
// connect to live version
#endif
您可以定义自己的DEBUG_MODE
符号,也可以使用现有的符号(我不确定它可能会为iPhone SDK调用它)。
答案 1 :(得分:2)
要扩展Greg的答案,您可以传递编译器标志-DDEBUG_MODE(或-D [此处为任何名称])来定义DEBUG_MODE并导致#ifdef的第一个分支被编译。