我正在考虑在我正在编写的库中使用异常进行内部错误处理。如果使用它们,库将使用 arc 构建并f-objc-arc-exceptions
启用。
obj-c 异常的一个问题是必须注意不要抛出任何您不知道是异常安全的代码。使用 编译文件时-fobjc-arc-exceptions
,编译器异常添加的枚举代码是否安全?
据我所知,应该是,因为我看不出有任何理由让它做任何需要清理的事情。但如果这种行为记录在某处,我会更乐意使用它。
编辑:我应该澄清一下,当我说“使用异常处理内部错误”时,我指的是非致命错误。所以这里的“异常安全”意味着不应该有内存泄漏,没有未释放的锁等。