我可以在断点中覆盖方法的返回值吗?

com*_*eck 2 xcode objective-c lldb

- (BOOL)mySetting
{
  return [myObject returnYes];
}
Run Code Online (Sandbox Code Playgroud)

对于上面这样的方法,是否可以使用调试器命令添加断点,以便该-mySetting方法NO在启用断点时自动返回不同的值(例如)?

我正在寻找一个选项,其中调试器不必中断应用程序的执行,(又名“评估操作后自动继续”已打开)。

Cas*_*sey 7

虽然 zylenv 的答案会起作用,但它需要您创建一个临时变量并重新编译/启动。

正确的方法是使用 lldb 的thread return命令。它是这样使用的:

线程返回 NO

一篇很好的博客文章解释了它的用法(以及一堆其他很酷的 LLDB 东西)在这里

  • 这似乎不适用于 Xcode 10.2 中的 Swift (2认同)