现在我已经升级到 Lion 和 Xcode 4.3.x,调试器正在进入 ARC 部分。所以我看到满屏
libobjc.A.dylib`objc_retainAutoreleasedReturnValue:
0x1de7fe0: pushl %ebp
和 pushl
和 movl
和 subl
等等。不幸的是我不能用符号表示这些,我也不关心调试 Apple 的东西。有没有办法让调试器只关注我实际拥有的代码?
我正在使用 LLDB,但同样的事情也发生在 GDB 上。
编辑:这也发生在 AppCode 上,它说明了一些事情(但我不知道是什么)。
最佳答案
这可能不是您想听到的,但是从 Xcode 4.5.2(Xcode 的当前版本,或者至少是我拥有的最新版本;)开始,我不相信调试器是可能的自动跳过 Apple 的内部说明。我不认为这与 ARC 特别相关,而是最新版本的调试器的工作方式。
以下是我在调试时解决这个问题的方法:
1) 您可以使用“跳过”按钮继续下一段代码(您可能需要这样做几次才能跳出 Apple 的东西)。
2) 您可以在正在调试的代码前后放置一个断点。这样,您可以使用“播放”按钮而不是使用跳过按钮。
关于objective-c - 在 Xcode 4.3 中仅调试 Obj-C/C?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10489572/