XCode調(diào)試 設(shè)置全局?jǐn)帱c(diǎn)并快速定位問題代碼所在行
XCode調(diào)試技巧 設(shè)置全局斷點(diǎn)并快速定位問題代碼所在行是本文要介紹的內(nèi)容,很多時(shí)候,在調(diào)試程序的時(shí)候,我們很想馬上知道錯(cuò)誤的代碼在哪一行。 而不想大概設(shè)置一個(gè)斷點(diǎn),逐行調(diào)試發(fā)現(xiàn)最終是哪一行代碼出問題導(dǎo)致程序崩潰??梢允褂孟旅孢@個(gè)辦法快速定位問題代碼。
第一種方法:
選擇Run–>Show–>Breakpoints,進(jìn)入斷點(diǎn)窗口
Xcode的斷點(diǎn)窗口
首先需要為-[NSException raise]創(chuàng)建一個(gè)斷點(diǎn)。 選擇Global Breakpoints, 雙擊Double-click for Symbol框, 輸入-[NSException raise],然后按return鍵。
添加了斷點(diǎn)-NSException raise后
其次,再按照上面的步驟添加另外一個(gè)全局?jǐn)帱c(diǎn)objc_exception_throw。
現(xiàn)則,運(yùn)行的程序有異常拋出的時(shí)候,調(diào)試器就會中止程序運(yùn)行并指向有問題的代碼行。
第二種方法:
有好多異常 ,無法正常進(jìn)入斷點(diǎn) ,程序會直接退出,比如:
這時(shí)候我們甚至不知道使在哪出現(xiàn)的這個(gè)錯(cuò)誤,OK,打開Run>>Debugger 找到程序退出位置:
然后添加一個(gè)軟斷點(diǎn) Run->Manage Breakpoints -> Add symbolic breakpoint, 并輸入 objc_exception_throw
重新運(yùn)行調(diào)試 :
錯(cuò)在哪兒是不是很容易就找到了 :)
第一種方法本人嘗試可用,第二種估計(jì)也能行。。。
小結(jié):XCode調(diào)試 設(shè)置全局斷點(diǎn)并快速定位問題代碼所在行的內(nèi)容介紹完了,希望本文對你有所幫助!