在Xcode中,LLDB可以在调试时通过expr命令更改变量值(请参阅How to change variables value while debugging with LLVM in XCode?)。我使用此方法成功更改字符串值,但是当我将NSURL变量更改为新实例时,出现错误:
(lldb) expr url = [NSURL URLWithString:@"www.example.com"];
error: no known method '+URLWithString:'; cast the message send to the method's return type
error: 1 errors parsing expression
如何将网址更改为新值?感谢。
答案 0 :(得分:6)
您可以尝试明确地投射,即
expr url = (NSURL *)[NSURL URLWithString:@"www.example.com"];
因为LLDB有时无法获得返回类型。例如,
// You should specify the return type here:
expr (int)[UIApplication version]
// instead of
expr [UIApplication version]
答案 1 :(得分:0)
对于 Swift 5:
expr url = URL(string:"https://www.example.com")!