OC自定義日志 (Log)

OC自定義日志 (Log)

只在debug的時(shí)候輸出, release的時(shí)候不輸出

#ifndef DEBUG
#define NSLog(...)
#endif

輸出時(shí), 輸出函數(shù)(方法)名及行數(shù)

//類名及函數(shù)(方法)名
NSLog(@"%s", __func__);
NSLog(@"%s",__FUNCTION__);
NSLog(@"%s",__PRETTY_FUNCTION__);

//行數(shù) 
NSLog(@"%d",__LINE__);

但是每次要寫這些, 覺得很麻煩, 可以直接定義如下:

#ifdef DEBUG
#define DLog(fmt, ...) NSLog((@"%s [Line %d] " fmt), __PRETTY_FUNCTION__, __LINE__, ##__VA_ARGS__)
#else
#define DLog(...)
#endif

只需要用 DLog(...) 就可以在輸出需要信息的同時(shí), 還輸出所在類、 函數(shù)(方法)名以及行數(shù)。 在項(xiàng)目文件很多的時(shí)候, 有時(shí)候各種NSLog()內(nèi)容很多很雜, 分不清各個(gè)NSLog()到底寫在哪里, 可以用這種方法很快找到輸出所在的位置, 很方便吧. (建議直接寫進(jìn) .pch 文件中)

上面是看Stack Overflow上很多人推薦的 (個(gè)人也推薦上面的寫法)
下面是看傳智的視頻學(xué)的, DLog(...) 輸出的同時(shí)可以輸出所在的類名和方法名

#ifdef DEBUG
#define DLog(...) NSLog(@"%s\n %@\n\n", __func__, [NSString stringWithFormat:__VA_ARGS__])
#else
#endif
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容