// 以release模式编译的程序不会用NSLog输出,而以debug模式编译的程序将执行NSLog的全部功能。
#ifndef __OPTIMIZE__
# define NSLog(...) NSLog(__VA_ARGS__)
#else
# define NSLog(...)
#endif
或
#ifdef __OPTIMIZE__
#define NSLog(...)
#endif
这个代码的魔术在于:release模式通常会定义 __OPTIMIZE__,debug模式不会。
将这段代码放在头文件当中,就可以放心的使用NSLog了!
把这些代码放到*Prefix.pch中最省事。可以把这段宏定义放到一个头文件中,再把这个头文件包含到*Prefix.pch中。
原文:http://lichen1985.com/blog/?p=251
来源:https://www.cnblogs.com/ios-wmm/archive/2012/08/24/2654112.html