利用宏定义令iOS项目当中的NSLog不执行

今天在博客园主页看到一篇帖子,提到NSLog消耗运行时性能:

http://www.cnblogs.com/sunnyxx/p/3680623.html

解决方案如下,在​Prefix.pch文件当中定义宏:

1 #ifdef DEBUG
2 #define MyLog(...) NSLog(__VA_ARGS__)
3 #else
4 #define MyLog(...)
5 #endif

这段宏可以根据是否存在DEBUG宏分别展开不同的MyLog方法代码,

如此一来,只要所有地方都使用MyLog代替NSLog,在项目文件的Preprocessor Macros当中,将DEBUG=1去掉,那么打印日志的代码就会全被忽略掉了。

原文地址:https://www.cnblogs.com/Steak/p/3681029.html