Ios 如何在XCode调试器中计算语句
因此,我曾经使用过的每一个IDE,如果代码中有某个语句具有断点集,则有一种方法可以计算该语句以查看它返回的内容,即VisualStudio中的即时窗口,或使用“监视”菜单。XCode中是否有某种等价物,或者是否有某种方法来计算代码段中的语句 例: 返回false,因此我想看看Ios 如何在XCode调试器中计算语句,ios,xcode,debugging,xcode4.6,Ios,Xcode,Debugging,Xcode4.6,因此,我曾经使用过的每一个IDE,如果代码中有某个语句具有断点集,则有一种方法可以计算该语句以查看它返回的内容,即VisualStudio中的即时窗口,或使用“监视”菜单。XCode中是否有某种等价物,或者是否有某种方法来计算代码段中的语句 例: 返回false,因此我想看看[FGO BoundingBox]的计算结果是什么,但除了更改代码以将其存储在中间变量中之外,我似乎什么都想不出来。假设我在XCode中的这一行上有一个断点,那么查看此语句将返回什么最简单的方法是什么?您可以尝试: po [
[FGO BoundingBox]
的计算结果是什么,但除了更改代码以将其存储在中间变量中之外,我似乎什么都想不出来。假设我在XCode中的这一行上有一个断点,那么查看此语句将返回什么最简单的方法是什么?您可以尝试:
po [FGO BoundingBox]
或
也请查看
help expression
在调试器中。在该行中断,然后进入“
BoundingBox
”函数,并逐步结束它(或它返回某些内容的位置),您应该看到它返回的内容。这是返回的[没有可用的Objective-C描述]
对于如果我将它们放入代码中会返回某些内容的语句,这似乎有点奇怪。@KevinDiTraglia-变量必须在“范围内”,然后才能对其使用“po”。例如,在执行po[FGO BoundingBox]
@KevinDiTraglia之前,您必须已经过了设置FGO的点,并且理解您将这些命令键入控制台窗口。)@HotLicks它在范围内,并且键入表达式[FGO BoundingBox]
效果很好,所以我想我只需要用表达式作为前缀。感谢您的回答(在键入po[FGO boundingBox]
时返回了上述错误)。啊,是的!!如果要打印的表达式不是Objective-C对象,只需使用“p”而不是“po”。CGRect不是一个对象,而是一个C结构。我试过了,但它返回的另一个调用不是IDE计算的,似乎应该有一种简单的方法,可以在不涉及方法调用的所有细节的情况下查看返回的内容。@KevinDiTraglia-您正在了解为什么组合语句和在此处或此处使用一些临时值并不总是明智的。@HotLicks虽然我同意某些观点,但这似乎仍然是IDE中的一个真正弱点。
po NSStringFromCGRect([FGO BoundingBox])
help expression