【发布时间】:2013-12-20 06:18:04
【问题描述】:
我曾经在 .NET c# 中工作,最近开始学习 Objective-c 和 iOS 编程。有几次我读到objective-c是异常不友好的,我不应该处理它们。我知道最好不要引起任何异常,但它们不是为了保护我们的代码而创建的吗?异常处理在 .NET 中很常见,我不明白为什么我不应该在 Objective-c 中这样做。
【问题讨论】:
-
在“Objective-c 中异常/返回 NO/nil 的最佳实践是什么?”没有人解释为什么我不应该使用它们。并且“为什么我不应该将每个块都包装在“try”-“catch”中”仍然不能解释为什么 Objective-c 中的异常处理不像 .NET 那样被推荐(因为很明显不要过度使用它)。
-
跟ObjC没什么关系,跟Cocoa有关。在内部,Cocoa 不会将所有内容都包装在 @try/@catch/@finally 中,因此如果 Cocoa 调用您的代码,即使您稍后捕获它,它也不会为您的代码抛出异常做好准备。
标签: ios objective-c exception exception-handling