在开发过程当中,咱们常常须要用到NSLog输出一些信息,甚至有的开发过程,必须在控制台查看输出,有经验的程序员经过控制台输出就能知道整个数据交互的一个流程。可是一个发布的程序,里面带有太多的NSLog输出,确定对于App性能有所影响,这时候咱们能够使用一个宏定义来处理,在开发的时候使用DEBUG模式,在发布的时候使用RELEASE模式。这样,发布的App就不会在程序内部作大量的NSLog输出了。程序员
简单的代码以下,性能
1
2
34
|
#if defined(DEBUG)||defined(_DEBUG)
NSLog(@
"测试代码"
);
NSLog(@
"Tst Coding"
);
#endif
|
上面的#if #endif宏定义的意思就是若是定义了DEBUG,那么就使用NSLog输出;不然这段代码直接忽略。有人会疑问这个DEBUG和_DEBUG来自哪里,这个其实不用担忧,这个来自于Xcode的默认设置,咱们能够取消DEBUG模式,开启RELEASE发布模式,以下截图所示,测试
选择Product->Scheme->Edit Scheme,spa
下图能够选择Debug和Release两种模式,.net
这里我选择了Release,那么则默认没有定义Debug,则上面代码中#if...#endif之间的输出NSLog不会执行。这样就在发布程序的时候,节省了一些硬件设备的资源。code