Xcode“po”命令

时间:2012-05-23 07:24:38

标签: objective-c nslog po

调试时,我需要检查私有NSString成员的值,例如名为str。后:

    self.str = xxxxxxx;

我在控制台中键入“po self.str”但只得到“(NSString *)$ 37 = 0x00000000”
所以我试过了:

    NSLog("%@", self.str);

...然后我看到了字符串值。

为什么我不能使用命令“po”检查var的值?

现在我知道这是因为我使用lldb作为调试器,而不是gdb。所以“po”(print-object)命令只能显示指针的地址。有没有关于在使用lldb时打印对象描述的解决方案?

更新:我发现self本身不可用。我猜这个问题与类实例有关,这是一个静态变量。这是po无法找到self的指针的原因吗?

1 个答案:

答案 0 :(得分:1)

您需要将其称为不带点符号的方法

po [self str]

或者,如果您知道支持变量名称,则可以直接打印

po _str