Swift 错误处理与并发编程全解析
1. 错误处理概述
错误处理是程序对错误情况做出响应并从中恢复的过程。Swift 为在运行时抛出、捕获、传播和处理可恢复错误提供了一流的支持。有些操作不能保证总是能完成执行或产生有用的输出,虽然可选类型可表示值的缺失,但当操作失败时,了解失败原因能让代码做出相应响应。
例如,从磁盘文件读取和处理数据时,可能因文件不存在、无读取权限或文件编码格式不兼容等原因失败。区分不同情况有助于程序解决部分错误,并向用户传达无法解决的错误。
2. 错误的表示与抛出
在 Swift 中,符合 Error 协议的类型的值可表示错误,该空协议表明类型可用于错误处理。Swift 枚举非常适合建模一组相关的错误条件,关联值可传达有关错误性质的额外信息。
以下是表示游戏中自动售货机操作错误条件的示例:
enum VendingMachineError: Error {
case invalidSelection
case insufficientFunds(coinsNeeded: Int)
case outOfStock
}
使用 throw 语句可抛出错误,示例如下:
throw VendingMachineError.insufficientFunds(coinsNeeded: 5)
超级会员免费看
订阅专栏 解锁全文
60

被折叠的 条评论
为什么被折叠?



