簡體   English   中英

XCode中宏的符號斷點

[英]Symbolic breakpoint on Macro in XCode

我在我的應用程序中使用CocoaLumberjack( https://github.com/CocoaLumberjack/CocoaLumberjack )。

它有幾個不同的日志宏,例如:
DDLogInfo
DDLogVerbose
DDLogWarn
DDLogError

這些被定義為宏。 我想創建一個將在所有DDLogError上中斷的符號斷點。 我怎么做?

簡而言之,您不需要。 宏是預編譯器指令。 到程序編譯並運行時,宏消失了。

符號斷點會中斷特定的實例方法和函數調用。

您可能能夠做的最好的事情是創建一個虛擬方法並編輯DDLogError宏的定義以調用該方法。 然后,您可以在該方法上設置斷點(符號或實際)。

lldb具有一個“源正則表達式斷點”,可能對此有所幫助。 它將在源文件的文本中搜索某種模式,如果該模式匹配,則在該源代碼行上設置一個斷點。 你說:

(lldb) break set -p "DDLog"

這可能對您來說不太方便,因為沒有參數它只會在當前源文件中查找,並且您可以指定任意數量的文件,例如:

(lldb) break set -p "DDLog" -f foo.c -f bar.c

但是目前沒有辦法說“所有源文件”,因此您可能會厭倦鍵入所有文件。但是,如果您只需要在幾個文件中設置這些宏斷點,則可能會派上用場。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM