在Swift中错误分为三种:
在 Swift 中有一个 Error 协议用来解决错误,原则上任何类型都可以遵循 Error 协议来表示错误类型,但是是我们通常用 遵循 Error 协议的 枚举 和 结构体 来表示错误
用枚举定义错误类型
用结构体定义错误类型
throw throws try
函数通过 throw 抛出自定义错误,返回值前加上 throws
调用是要加上 try
do - catch
将之前的 try 语句放到 do{} 中 catch 进行错误处理。 后面跟上对应的错误,没有跟上错误,表示,其他所用
将错误往上抛
注意:当 错误 抛到 main 函数还没处理是,警就会运行报错
将错误转换成可选值 try?
可以用 try? 通过将错误转换成一个可选值来处理错误。如果是在计算 try? 表达式时抛出错误,该表达式的结果就为 nil
注意:慎用 try!, try!表示一定有值
指定清理操作 defer
defer 表示在退出当前作用域时所执行的代码,无论是否成功。例如,可以用 defer 语句来确保文件描述符得以关闭,以及手动分配的内存得以释放
留言与评论(共有 0 条评论) “” |