• Rust学习笔记 14:生命周期

    对应代码文件:src/bin/14_lifetimes.rs 运行命令: 1cargo run --bin lesson14_lifetimes 学习目标生命周期描述引用有效的范围。它让编译器确认引用不会指向已经释放的数据。 初学时不要把生命周期理解成手动控制内存。它只是对引用关系的标注和检查。 理解生命周期用于防止悬垂引用。 知道很多生命周期可以由编译器自动省略。 会读懂简单的 'a 标注。 理解结构体中保存引用时为什么需要生命周期参数。 核心概念速查 术语 基本意思 本节用途 生命...
  • Rust学习笔记 13:Trait 与 Trait Bound

    对应代码文件:src/bin/13_traits_trait_bounds.rs 运行命令: 1cargo run --bin lesson13_traits_trait_bounds 学习目标Trait 定义类型可以具备的行为。Trait bound 则约束泛型类型必须实现某些行为。 如果说泛型回答“我可以接收哪些类型”,trait bound 就回答“这些类型至少要会做什么”。 理解 trait 是行为接口。 会为自定义类型实现 trait。 会用 impl Trait 和 <T: Trait&...
  • Rust学习笔记 12:泛型

    对应代码文件:src/bin/12_generics.rs 运行命令: 1cargo run --bin lesson12_generics 学习目标泛型让同一段代码适用于多种类型。它能减少重复,同时保持静态类型检查。 Rust 的泛型在编译期单态化,常见情况下不会带来运行时动态分发开销。 理解泛型参数 T 的含义。 会定义泛型函数和泛型结构体。 知道泛型需要 trait bound 才能使用特定能力。 理解 Option<T>、Result<T, E> 也是泛型类型。 核心概念...
  • Rust学习笔记 11:错误处理

    对应代码文件:src/bin/11_error_handling.rs 运行命令: 1cargo run --bin lesson11_error_handling 学习目标Rust 把错误分成可恢复错误和不可恢复错误。可恢复错误通常用 Result 表达。 错误处理是 Rust 代码可读性的重要部分。你需要明确说明失败时程序应该如何反应。 理解 Result<T, E> 的含义。 会用 match 处理成功和失败。 掌握 unwrap、expect 的风险和适用场景。 理解 ? 运算符如何传...
  • Rust学习笔记 10:模块系统和包管理

    对应代码文件:src/bin/10_modules_packages.rs 运行命令: 1cargo run --bin lesson10_modules_packages 学习目标模块系统用于组织代码、控制可见性和管理命名空间。Cargo 则负责构建、运行和包管理。 本项目把每节课放在 src/bin 下,并在 Cargo.toml 中声明多个 bin target。 理解 package、crate、module 的基本区别。 掌握 mod、pub、use 的用途。 知道如何通过 Cargo 运行指定...
  • Rust学习笔记 09:常见集合类型

    对应代码文件:src/bin/09_collections.rs 运行命令: 1cargo run --bin lesson09_collections 学习目标集合用于保存运行时数量可变的数据。本节重点是 Vec、String 和 HashMap。 集合通常把数据放在堆上,因此遍历、插入、借用时都会涉及所有权规则。 掌握 Vec<T> 的创建、追加和遍历。 理解 String 是可增长、拥有所有权的 UTF-8 字符串。 掌握 HashMap<K, V> 的插入、读取和更新。 知...
  • Rust学习笔记 08:枚举与模式匹配

    对应代码文件:src/bin/08_enums_pattern_matching.rs 运行命令: 1cargo run --bin lesson08_enums_pattern_matching 学习目标枚举用于表达一个值可能属于有限几种情况。模式匹配用于根据具体情况分支处理。 Rust 的 Option 和 Result 都是枚举。掌握枚举后,错误处理和空值处理会更自然。 掌握 enum 的基本定义。 理解枚举变体可以携带数据。 会使用 match 穷尽处理所有情况。 会使用 if let 简化只关心...
123459