標籤:
在obj-c系列博文裡,我們粗淺的介紹了obj-c的一些文法以及F庫中的一些標準類的使用,但是實際編寫拿得出手的APP還是得老老實實在os x上用Xcode寫啊!最近上網無意中發現還有支援os x和ios的ruby架構啊,手又癢了!另外swift也推出了,Xcode6.0beta也裝了,這個世界誘惑就是多啊!不過言歸正傳,在這一系列博文裡還是誠懇的記錄下使用Xcode過程中出現的問題以及解決方案吧。
OK!言歸正傳,在使用Xcode6beta時(以下全部簡稱x6b),發現設定斷點,中斷後直接跳到彙編視圖,這根本不是一般人需要的哦(雖然本貓不是一般人,是特殊貓啊!),其實這個是可以設定的哦,在斷點斷下之後,菜單中依次選擇Debug->Debug Workflow後,將總是顯示彙編行勾去掉即可:
這時再中斷時,原始碼行可以正確顯示鳥:
我們知道在x6b調試時後台使用的是lldb調試器,我們可以在調試時使用很多調試命令查看和設定代碼中變數的值(類似於VS環境),看到紅框部分了嗎?就是這個地區啊!不過我在Debug Area中輸入po val_name卻顯示錯誤哦:
(lldb) po now
error: warning: couldn‘t get cmd pointer (substituting NULL): extracting data from value failed
Couldn‘t materialize: couldn‘t get the value of variable now: no location, value may have been optimized out
Errored out in Execute, couldn‘t PrepareToExecuteJITExpression
咋回事呢,其實這是由於你工程編譯目標類型是release而不是debug的緣故,因為沒有對象的額外調試資訊,自然顯示不出來啦,解決很簡單在x6b菜單依次選擇Prouct->Scheme->Edit Scheme:
然後在彈出的視窗中將Release改為Debug就可以啦:
然後在lldb中使用po指令就可以看見對象內容了哦:
(lldb) po now
2014-07-04 09:45:19 +0000
Xcode使用心得01:斷點中斷問題和調整編譯目標[轉]