我的代码停在 (lldb) 提示符处的断点处。我可以向对象发送消息并将其值打印在控制台上。
(lldb) p [self computePI]
(float) $1 = 3.0
哇!此时有些问题。我希望能够进入computePI作为找出哪些变量被搞乱的捷径。但是,如果我在该选择器上放置断点并重试,我会得到:
(lldb) p [self computePI]
error: Execution was interrupted, reason: breakpoint 5.1.
The process has been returned to the state before execution.
如果我此时能够以某种方式进入computePI,那将是一个真正的节省时间的方法。这可能吗?我一直在看http://lldb.llvm.org http://lldb.llvm.org并没有看到任何东西。感谢您的帮助。
UPDATE:根据 Jason Molenda 的回答,我使用以下方便的别名更新了 ~/.lldbinit 文件:
command alias nup expr -u 0 --
command alias nupo expr -u 0 -o --
这让我可以使用 nup (代替 p)和 nupo (代替 po)。
The p
命令实际上是一个别名expr --
。选项之一expr
is -u
or --unwind-on-error
- 在这种情况下,断点被视为“错误”(这本身可能被认为是一个错误 - 这是有争议的,在某些用例中,它的行为不同是不直观的。)
无论如何,你应该能够做到
(lldb) expr -u false -- [self computePI]
它会停在断点处。这--
这里表示expr
它应该停止进行选项解析,之后的所有内容都是要评估的表达式。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)