如何使NSLog只在Debug模式下有效
2016-02-27 21:53
337 查看
1#ifndef __OPTIMIZE__
2#define NSLog(...) NSLog(__VA_ARGS__)
3#else
4#define NSLog(...) {}
5#endif
就是上面的这段简单代码就可以让我们的NSLog只在Debug模式即开发过程中有效,而当我们的程序处在Release模式下即程序发布中NSLog将无效,这样可以减少用户使用程序的内存开销,同时也免去了我们在开发过程中不断敲下NSLog并不断注释NSLog的繁琐工作。
如何使用上面的代码?
首先将上面的代码写到头文件中,然后在你要是用NSLog的.m文件中导入头文件即可。更简单的还可以建立一个pch文件,将头文件导入到pch文件,这样整个项目的所有文件都可以在不导入头文件的情况下使用上面的代码。
代码原理:
上面 的代码实际是定义了一个宏,这个宏名称恰好也是NSLog,我们在其他文件中使用的NSLog已经不再是原来的NSLog而是定义的宏NSLog,(此NSLog非彼NSLog---
![](http://static.blog.csdn.net/xheditor/xheditor_emot/default/laugh.gif)
)。
2#define NSLog(...) NSLog(__VA_ARGS__)
3#else
4#define NSLog(...) {}
5#endif
就是上面的这段简单代码就可以让我们的NSLog只在Debug模式即开发过程中有效,而当我们的程序处在Release模式下即程序发布中NSLog将无效,这样可以减少用户使用程序的内存开销,同时也免去了我们在开发过程中不断敲下NSLog并不断注释NSLog的繁琐工作。
如何使用上面的代码?
首先将上面的代码写到头文件中,然后在你要是用NSLog的.m文件中导入头文件即可。更简单的还可以建立一个pch文件,将头文件导入到pch文件,这样整个项目的所有文件都可以在不导入头文件的情况下使用上面的代码。
代码原理:
上面 的代码实际是定义了一个宏,这个宏名称恰好也是NSLog,我们在其他文件中使用的NSLog已经不再是原来的NSLog而是定义的宏NSLog,(此NSLog非彼NSLog---
![](http://static.blog.csdn.net/xheditor/xheditor_emot/default/laugh.gif)
)。
相关文章推荐
- Delphi制作图像特殊显示效果
- JSTL中EL标签与Struts2中OGNL标签在JSP页面上的区别
- 占
- 分治法
- [转]华为离职副总裁徐家骏的工作感悟
- 关于/proc/config.gz不存在的问题
- 模式识别与机器学习(一):概率论、决策论、信息论
- UNIX环境高级编程 apue.h头文件的配置
- 杭电1002 a+b problem2
- HDU 1576 A/B 扩展欧几里德算法
- 如何设置一个严格30分钟过期的Session
- PHP运算符
- 自己实现个Android下仿IOS的时间选择器、时间控件Time-Selector
- 我们能通过快速、开放的研究来战胜寨卡病毒吗?
- 权限系统组织管理—详细设计说明书
- EOF on Windows
- Unity定时器
- c语言实现对传统单链表的创建、添加 遍历 删除 反转元素操作
- OSI七层与TCP/IP四层模型
- hdu 5596 GTW likes gt