Rust 语言学习手册

免费学习 系统级编程 内存安全

Rust学习手册《Result 与 Option》:Rust 没有异常,使用 `Result` 和 `Option` 显式处理可恢复错误。 **Result 枚举:** ```rust enum Result { Ok(T), Err(E) } ``` **使用 Result:** ``...

错误处理

Result 与 Option

【详细说明 & 代码示例】
Rust 没有异常,使用 `Result` 和 `Option` 显式处理可恢复错误。 **Result 枚举:** ```rust enum Result { Ok(T), Err(E) } ``` **使用 Result:** ```rust use std::fs::File; let f = File::open("hello.txt"); let f = match f { Ok(file) => file, Err(error) => panic!("Problem opening the file: {:?}", error), }; ``` **快捷方法:** - `unwrap()`:成功返回值,失败 panic(不推荐生产) - `expect(msg)`:类似,可自定义错误信息 - `?` 操作符:传播错误,在返回 Result 的函数中使用。 ```rust fn read_file() -> Result { let mut s = String::new(); File::open("hello.txt")?.read_to_string(&mut s)?; Ok(s) } ``` **Option 类似:** `unwrap`, `expect`, `?`(在返回 Option 的函数中)。 **错误类型转换:** 使用 `map_err` 或 `?` 的自动转换(实现 `From`)。

学习提示:建议安装 Rust 工具链(rustup),使用 cargo 构建项目,并熟悉 rustc 编译器错误信息(Rust 的报错非常详细友好)。

全部章节目录(共 63 个知识点)

Rust 基础 (1个知识点)

所有权系统 (1个知识点)

借用与引用 (1个知识点)

生命周期 (1个知识点)

Cargo 与工具链 (2个知识点)

使用说明

  • • 本手册涵盖 Rust 从基础到并发、异步、Web 开发的完整知识体系
  • • 在搜索框输入关键词,快速定位相关知识点
  • • 点击条目标题进入详情页,查看详细说明与代码示例
  • • 页面按分类展示所有知识点,方便系统性学习
  • • 建议通过 Rust 官方文档(doc.rust-lang.org)加深理解