[英]Prepend NSLog to all methods in Objective-C
是否可以配置一個類,以便每個方法調用:
"NSLog(@"%s", __PRETTY_FUNCTION__);"
在執行之前?
例如,給定:
@implementation myClass
- (void) methodA {
NSLog(@"Do something in method A");
}
- (void) methodB {
NSLog(@"Do something in method B");
}
@end
[myClass methodA]的輸出為:
“-[myClass methodA]”
“用方法A做某事”
代替:
“用方法A做某事”
謝謝。
有很多聰明的方法可以做到這一點,但是假設這只是為了調試您編寫的類,並且有太多的方法可以手工完成,為什么不只使用Find&Replace?
注意:您的左括號在代碼行的末尾,您顯示以下內容使用該代碼,如果您更改樣式,則需要更改正則表達式。
在Xcode中,確保模式匹配已打開:單擊搜索輸入框左側的放大鏡,選擇“ Edit Find Options...
,然后將“ Matching Style
設置為“ Regular Expression
現在在搜索字段中輸入:
^-[^{]+\{
可以匹配:行( ^
),破折號( -
),不是大括號( [^{]
)一次或多次( +
),最后是大括號( \\{
)。
進行一些搜索以確保它與您的想法匹配。 然后在“替換”字段中輸入:
\0 NSLog(@"%s", __PRETTY_FUNCTION__);
它將替換匹配的內容( \\0
),然后替換您的NSLog
調用。
可以類似地完成該過程的逆轉,這只是練習。
高溫超導
我已經專門為此類事情創建了一個庫。 在GitHub上查看Xcode Logger 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.