iOSの「NSLog」マクロ
661 ワード
iOSアプリケーションの開発でログ情報を出力するためにログ(...)を使用すると、アプリケーションのリリース時にNSLog文を一度に削除できます(デバッグモードではDEBUGが定義されています)
ここでなぜログ名をカスタマイズするのか、NSLogを使うのか.原因は三つある.NSLogを使うことに慣れています.NSLogを使うと問題があるのではないかと思っているかもしれません.実は問題ありません.私たちがカスタマイズしたマクロの優先度はもっと高くなります.install B
#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 */
ここでなぜログ名をカスタマイズするのか、NSLogを使うのか.原因は三つある.NSLogを使うことに慣れています.NSLogを使うと問題があるのではないかと思っているかもしれません.実は問題ありません.私たちがカスタマイズしたマクロの優先度はもっと高くなります.install B