3

在 Xcode 中,LLDB 可以在调试时通过 expr 命令更改变量值(请参阅如何在 XCode 中使用 LLVM 调试时更改变量值?)。我使用此方法成功更改了字符串值,但是当我将 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

如何将 url 更改为新值?谢谢。

4

2 回答 2

7

您可以尝试显式转换,即

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]
于 2013-08-01T03:55:21.727 回答
0

对于斯威夫特 5:

expr url = URL(string:"https://www.example.com")! 
于 2021-02-04T18:52:14.023 回答