更新:
更多信息在这里:
~~~~~~~~~~~~~~~~~~~~~~~~
情况
我有一些非常漂亮的 NSLog 调用,用于调试应用程序中更复杂的部分。但是,我最近才知道这些会影响运行时性能!
目标
我想在我没有从 Xcode 中实际执行 Product > Run(又名 command-R)的任何运行期间删除我的 NSLog 调用 - 特别是在这个东西部署在 App Store 上的情况下,以及当我运行与 Xcode 断开连接时的应用程序(即在街上走时只需点击图标)。
建议的解决方案?
假设我已经创建了一个 VIEW_DEBUG 的预处理器宏,那么在我上面描述的情况下,以下实现是否会有效地从执行中删除 NSLog 调用?
<bunch of code>
#ifdef VIEW_DEBUG
NSLog(@"really complex logs entries");
#endif
<even more code>
这对我来说很难“测试”,所以我想我会吸引更有经验的人。:)
Xcode 设置(供参考)