美文网首页
iOS中的"NSLog"宏

iOS中的"NSLog"宏

作者: 小荣袁 | 来源:发表于2017-01-22 18:03 被阅读137次

    在开发iOS应用时我们使用Log(…)来输出日志信息,就可以在发布应用的时候,一次性将NSLog语句移除(在调试模式下,才有定义DEBUG)

    #ifndef PrefixHeader_pch
    #define PrefixHeader_pch
    
    // 保证 #ifdef 中的宏定义只会在 OC 的代码中被引用
    // 否则,一旦引入 C/C++ 的代码或者框架,就会出错!
    #ifdef __OBJC__
    
    #ifdef DEBUG // 开发阶段-DEBUG阶段:使用NSLog
    #define NSLog(fmt,...) NSLog((@"%s [Line %d] " fmt),__PRETTY_FUNCTION__,__LINE__,##__VA_ARGS__)
    #else // 发布阶段-上线阶段:在Edit Scheme设置Build Configuration为Release
    #define NSLog(...)
    
    #endif
    
    #endif /* PrefixHeader_pch */
    
    

    这里为什么自定义Log名称还是用NSLog呢?原因有三
    1.大家都习惯了使用NSLog,顺手
    2.可能大家想,用NSLog会不会有问题呢?其实是没有问题的,我们自定义的宏的优先级会更高
    3.install B

    相关文章

      网友评论

          本文标题:iOS中的"NSLog"宏

          本文链接:https://www.haomeiwen.com/subject/dheobttx.html