2011-07-24 48 views
6

GDB中有一個命令po,它打印Objective-C對象的詳細信息。 (及其說明) 在LLDB中,po只是打印內存地址。我如何在LLDB中看到類似的GDB輸出?在Xcode4.1中,GDB中的`po`等價於LLDB?

+3

考慮刪除這個問題,因爲LLDB確實有po –

+1

@VincentGable號。因爲我們使用SCM的原因相同。 – Eonil

回答

13

這是時下實現。爲了完整起見,它是一個別名這個命令:

expression -o -- 

對於這個問題和其他LLDB命令的幫助,使用命令的幫助:

help expression 
+0

這就是我從文檔中想到的。但是,每當我嘗試獲得以下輸出:錯誤:實例方法'userData'在不同的翻譯單元中具有不兼容的結果類型('void *'和'id') note:此處也聲明實例方法'userData' 注:在這裏聲明類型爲'ID' 錯誤:1錯誤解析表達式 –

+0

對我來說,看起來更像是代碼中的錯誤,而不是LLDB中的問題。 –

3

看來目前還沒有實施。 http://lldb.llvm.org/status.html

+0

什麼現在還沒有: 迴歸測試套件 支持的操作系統尚未完全模塊化尚未 塊支持 調用表達式 的Objective-C 2.0的支持功能:打印性能,綜合性能,Objective-C的表達, KVO,動態類型,點語法,運行時數據 C++支持:方法訪問,處理demangled名稱,動態類型 異常支持:按名稱,拋出對象,投擲者中斷 –

+2

從Xcode 4.3(可能更早)開始,po工作得很好。 –

1

不知道LLDB,但也許東西的效果:

print _NSPrintForDebugger(obj)