我想退出当前要逐步执行的方法。
-(void)helloWorld {
NSLog(@"Hello");
// I would like to return here, so that "World" isn't printed.
NSLog(@"World");
}
我尝试了以下方法,但是没有运气。
(lldb) expr return
<no result>
lldb是否可能?
当您使用Xcode进行调试时,并且程序在断点处暂停时,您可以将绿色的小箭头拖动到函数中的任何其他行。例如。在以下代码中:
如果我想跳过NSLog(@"B")
,我只需将绿色箭头从第20行拖到第23行,这意味着该函数将简单地从我想要的任何位置“返回”。
不幸的是,在Xcode 4.5.x中,无法强制从函数中尽早返回。在当前的lldb源中,位于http://lldb.llvm.org/处的是新添加的命令thread return
,该命令可以执行您想要的操作-它具有指定函数返回值的功能。不过,直到下一个主要版本,它才会在Xcode中使用。
我刚刚在下面提到的行上添加了一个断点:
var computed: Bool {
return device.time == 10 // added breakpoint here
}
并出现以下错误:
错误:从线程1的帧0返回时出错,我们仅支持当前设置简单的整数和浮点返回类型。
似乎仅适用于这两种类型