Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/116.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 如何在断点处查看Xcode中对象属性的值_Ios_Xcode_Debugging - Fatal编程技术网

Ios 如何在断点处查看Xcode中对象属性的值

Ios 如何在断点处查看Xcode中对象属性的值,ios,xcode,debugging,Ios,Xcode,Debugging,我有一个包含所有对象的父节点: SKNode* _moving; _moving = [SKNode node]; [self addChild:_moving]; ... [_moving addChild:spritenodetexture]; 现在我想检查“\u moving”的速度值,即“\u moving.speed”; 因此,我在条件线处设置了一个断点: if (_moving.speed > 0) { 我怎么知道在那一点上“_moving.speed”的值?查看调试窗口,

我有一个包含所有对象的父节点:

SKNode* _moving;
_moving = [SKNode node];
[self addChild:_moving];
...
[_moving addChild:spritenodetexture];
现在我想检查“\u moving”的速度值,即“\u moving.speed”; 因此,我在条件线处设置了一个断点:

if (_moving.speed > 0) {
我怎么知道在那一点上“_moving.speed”的值?查看调试窗口,我只看到地址、职位等,但没有任何价值!Xcode调试是否有工具可以看到它,但我不知道?
(我在Xcode中使用SpriteKit)

Xcode使用的现代版本

在断点期间检查作用域变量的最简单方法是使用调试区域内的“变量视图:视图>调试区域>显示调试区域”,然后单击“显示变量视图”按钮(即右下角倒数第二个图标)。然后,您可以在范围中浏览变量树

或者(尽管我个人取得了各种各样的成功),您只需将鼠标光标悬停在有问题的变量上,Xcode就会弹出一个带有一些选项的工具提示

您还可以从控制台本身发出LLDB命令。要打印变量,请执行以下命令:

print [_moving speed]

.

调试时,只需在文本编辑器中快速单击,就会显示一个弹出窗口。我单击,双击,没有显示任何值。如果不单击,只需将鼠标指针放在变量上即可。Xcode调试数据显示有很多错误。使用控制台。假设
speed
是标量而不是对象,在控制台中键入
p[\u移动速度]
。(有时它会让你输入
p\u moving.speed
,有时会让你感到困惑。)如果你想打印一个对象,请使用
po
,而不是
p
。请注意,在分配对象之前,在任何视图中你都不能访问
\u moving
。很抱歉,我按照你的指示进行操作,但我想不出你提到的图标是什么。打印命令看起来无法识别:“使用未声明的标识符“print”“@user1314404我已经用一个示例图像更新了我的答案,该示例图像显示了变量视图(即左侧白色窗格)、切换所述面板的图标和一个
打印
命令的示例。现在我明白你的意思了!是的,可以在那里输入命令,但在我的例子中,它不需要方括号就可以工作!还有一件事,输入“p”显示结果:(CGFloat)$2=1。如果我使用“print”,结果是:(CGFloat)$0=1。相同的值,但我不知道为什么$0和$2?
p
只是
print
的简写别名<代码>$0..$9
是永久变量,为了方便起见,它们只存储命令的结果。