这个问题很有学问,但刚才我注意到XCode没有抱怨下面的代码。
+ (double) someMethod {
@try {
}
@ catch (NSException *exception){}
}
没有返回值,但编译器没有给出错误。 它在一台设备上编译并运行。
如果我尝试使用NSLog(@"Value is %f", [AppDelegate someMethod]);
进行打印
它打印值为0.000000
这里发生了什么?可能是编译器中的一个错误,但它似乎确实返回了一些内容,使用try catch在幕后发生了什么,以便它返回一个值,任何人有什么想法?