我是Objective-C的新手。我在研究一些iOS/Mac应用程序时注意到,try -catch很少使用,如果使用过的话。例如,在Java中,几乎所有时间都在使用它。为什么它在Objective-C中并不常见呢?
发布于 2012-03-16 02:56:01
有很多SDK方法接受NSError**参数并返回BOOL。为了指示错误,它们返回false,并通过error参数返回错误以传达信息。
可以使用异常,但通常是在运行时级别出现故障的情况下-例如,某些对象不能处理选择器。虽然它看起来可能与我刚刚写的相反,但异常倾向于指示设计中的错误,而不是运行时错误。
NSError**的习惯用法就是你所需要的一切,比如失败的网址连接,数据转换,等等,在这些情况下,存在错误条件,但程序确实不应该被彻底杀死。
开始阅读:
发布于 2012-03-16 02:50:41
Objective-C中的异常通常用于真正的异常情况,并且几乎总是程序员的错误。要传达可恢复的错误,请使用NSError**模式。
https://stackoverflow.com/questions/9726192
复制相似问题