不直接用NSLog


一,固定寫法:函數

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

二,注意:spa

        1,MYLog括號中的...是固定寫法,表示能夠接受任意多個參數.調試

        2,NSLog括號中的__VA_ARGS__  也是固定寫法,先後用了兩個下劃線code

三,使用方式:class

        項目中Supporting files文件夾下有個 "工程名-Prefix.pch"文件,你能夠在該文件下聲明
file

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

        這樣以後工程中的任何一個文件中均可以使用改自定的打印函數(也就是說能夠在該.pch中放一些全局的東西)
註釋

四,好處:di

        這樣使用的好處就是,項目調試期間,咱們可能會用到好多MYLog()函數打印.

        若是不須要時,只需將.pch中該宏修改成:(這樣就至關於MYLog()表明的是註釋了)

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

五,修改:(這樣作還不夠智能,每次調試的時候須要用到打印,發佈的時候不須要打印還要手動修改一下)  

        其實系統提供了一個宏  DEBUG 表示在調試狀態下

        由於上述代碼能夠優化爲:    (下述代碼是公司經常使用代碼)

#ifdef DEBUG  //調試階段
#define MYLog(...)  NSLog(__VA_ARGS__)
#else //發佈階段
#define MYLog(...)
#endif
相關文章
相關標籤/搜索