什么是 Result?
本课属于 Coddy Rust 学习旅程的“逻辑与流程”单元。第 42 课,共 66 课。
Option 用于处理值缺失的情况,而 Rust 还提供了另一种枚举,用来处理另一种同样重要的情况:操作可能失败。来认识一下 Result<T, E>,它是 Rust 处理可恢复错误的主要工具。
Result 枚举有两个变体,用来表示操作的结果:
enum Result<T, E> {
Ok(T), // 成功:包含成功的结果
Err(E), // 失败:包含错误信息
}操作成功时,会返回包含成功结果的 Ok(value)。操作失败时,会返回包含错误信息的 Err(error)。这种明确处理成功和失败情况的方式,让 Rust 程序更加可靠、可预测。
在 Rust 中,你会到处遇到 Result,从可能因文件缺失而失败的文件操作,到可能超时的网络请求,再到可能收到无效输入的解析操作。与使用异常的语言不同,Rust 会要求你承认操作可能失败,并明确处理两种结果。
亲手试试
这节课没有代码挑战。
这节课包含一个小测验。开始学习即可作答,并记录你的进度。
逻辑与流程中的所有课
7使用 Result 处理错误
什么是 Result?在 Result 中使用 matchis_ok() 和 is_err()快捷方法:unwrap 和 expect问号运算符“?”将字符串解析为数字回顾:安全的除法函数自己练习: Rust 在线编译器