Objective-C语言从发行版本中删除日志语句

示例

从中打印的消息甚至NSLog显示在Console.app应用程序的发行版中,这对于仅对调试有用的打印输出没有意义。要解决此问题,您可以使用此宏代替进行调试日志记录NSLog。

#ifdef DEBUG
#define DLog(...) NSLog(__VA_ARGS__)
#else
#define DLog(...)
#endif

使用方法:

NSString *value = @"value 1";
DLog(@"value = %@", value);
// 鲜为人知的事实:程序员在Console.app中寻找工作职位
NSLog(@"We're hiring!");

在调试版本中,DLog将调用NSLog。在发行版本中,DLog什么也不会做。