2012-10-10 40 views
2

很多时候Xcode不会在监视窗口中显示实例成员值。如果我有一个派生自NSObject的类型与十几个数据成员,当我点击楔来显示我的类中的成员时,它只会将对象显示为NSObject。为什么Xcode调试器不显示类型信息?

在下面的例子中,我有一个Search对象的数组。调试器似乎明白数组中的对象是Search对象,但是当我单击楔来展开搜索对象时,它只是说“对不起,这些是NSObject”。我做错了什么,或者是15年前的Apple调试器技术?

enter image description here

+0

为了表示他们在新的'lldb'调试器中付出的努力,我经常想知道同样的事情......在这样的情况下,我尝试在调试器控制台的字典中调用' - description'在提供它所要求的演员后,因为控制台无法说出它在看什么)。其他时候,我更喜欢[AppCode](http://www.jetbrains.com/objc/)。 – rid

+0

它可能不仅仅是'lldb'的错,也是XCode的错。在大多数情况下,在调试窗口中输入类似'po [paSearches objectAtIndex:2]'的东西,即使XCode不理解对象类型。 –

+0

你使用的是什么版本的Xcode? Xcode在显示Xcode 4.4和4.5中的实例变量方面已经变得更好了。如果您使用的是比这些更早的东西,请升级。 –

回答

0

您是否使用LLDB或GDB?因为这些孩子看起来不像LLDB生成的。

+0

我还在使用Xcode 4.2.1。我升级了,但它仍然表现出这种行为。我如何知道我使用的调试器? – Askable

+0

你应该在变量视图的右边有一个调试器控制台 - 它是说(lldb)还是(gdb)? –

相关问题