主页 > 编程资料 > 编程更多 >
发布时间:2015-07-26 作者:网络 阅读:256次

在开发过程中,我们经常需要用到NSLog输出一些信息,甚至有的开发过程,必须在控制台查看输出,有经验的程序员通过控制台输出就能知道整个数据交互的一个流程。但是一个发布的程序,里面带有太多的NSLog输出,肯定对于App性能有所影响,这时候我们可以使用一个宏定义来处理,在开发的时候使用DEBUG模式,在发布的时候使用RELEASE模式。这样,发布的App就不会在程序内部做大量的NSLog输出了。

简单的代码如下,

?
1
2
3
4
#if defined(DEBUG)||defined(_DEBUG)
    NSLog(@"测试代码");
    NSLog(@"Test Coding");
#endif

 

上面的#if #endif宏定义的意思就是如果定义了DEBUG,那么就使用NSLog输出;否则这段代码直接忽略。有人会疑问这个DEBUG和_DEBUG来自哪里,这个其实不用担心,这个来自于Xcode的默认设置,我们可以取消DEBUG模式,开启RELEASE发布模式,如下截图所示,

选择Product->Scheme->Edit Scheme,

下图可以选择Debug和Release两种模式,

这里我选择了Release,那么则默认没有定义Debug,则上面代码中#if...#endif之间的输出NSLog不会执行。这样就在发布程序的时候,节省了一些硬件设备的资源。

转:http://my.oschina.net/leejan97/blog/296920

关键字词: