【发布时间】:2012-08-26 23:38:20
【问题描述】:
更新:
更多信息在这里:
Is it true that one should not use NSLog() on production code?
~~~~~~~~~~~~~~~~~~~~~~~~~~~
情况
我有一些非常漂亮的 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 设置(供参考)
【问题讨论】:
-
我不知道,这行得通吗?
#define NSLog //
标签: objective-c ios ios5