Swift笔记-错误处理

在Swift中错误分为三种:

  • 编译错
  • 逻辑错误
  • 运行错误

错误(Error)协议

在 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 条评论) “”
   
验证码:

相关文章

推荐文章