• 自定义NSLog


    摘要 公司中不直接使用NSLog,而是利用宏定义自己的打印函数,将该打印函数写在项目的.pch文件中.调试的时候往往用到好多打印,但发布的时候确不需要.(一下是在公司中的一些处理)

    一,固定写法:

            #define  MYLog(...)  NSLog(__VA_ARGS__)

    二,注意:

            1,MYLog括号中的...是固定写法,表示可以接受任意多个参数.

            2,NSLog括号中的__VA_ARGS__  也是固定写法,前后用了两个下划线

    三,使用方式:

            项目中Supporting files文件夹下有个 "工程名-Prefix.pch"文件,你可以在该文件下声明

            #define  MYLog(...)  NSLog(__VA_ARGS__)

            这样之后工程中的任何一个文件中都可以使用改自定的打印函数(也就是说可以在该.pch中放一些全局的东西)

    四,好处:

            这样使用的好处就是,项目调试期间,我们可能会用到好多MYLog()函数打印.

            如果不需要时,只需将.pch中该宏修改为:(这样就相当于MYLog()代表的是注释了)

            #define  MYLog(...)  //NSLog(__VA_ARGS__)    

    五,修改:(这样做还不够智能,每次调试的时候需要用到打印,发布的时候不需要打印还要手动修改一下)  

            其实系统提供了一个宏  DEBUG 表示在调试状态下

            因为上述代码可以优化为:    (下述代码是公司常用代码)

    1
    2
    3
    4
    5
    #ifdef DEBUG  //调试阶段
    #define MYLog(...)  NSLog(__VA_ARGS__)
    #else //发布阶段
    #define MYLog(...)
    #endif

                    

    追寻最真
  • 相关阅读:
    jquery判断<inpur type="checkbox" checked>是否被选择
    hibernate多对多的更新问题
    关于getHibernateTemplate().get()方法
    springmvc的@ResponseBody报错
    @RequestBody ajax 415 400
    js判断浏览器的类型,动态调整div布局
    平衡树treap 0基础详解
    P1582 倒水 题解
    vscode入门记
    P5025 [SNOI2017]炸弹 题解
  • 原文地址:https://www.cnblogs.com/zhao-jie-li/p/5188829.html
Copyright © 2020-2023  润新知