Rust 学习笔记 11:包与模块 (Packages & Modules)

Rust 学习笔记 11:包与模块 (Packages & Modules) “Organization is what you do before you do it, so that when you do it, it’s not all mixed up.” – A. A. Milne 欢迎来到 2025 年! 在完成了前 10 章的基础语法学习后,我们现在的 Rust 代码全都写在一个 main.rs 里。这对于写个猜数字游戏还行,但要写大项目,文件组织是必修课。 Rust 的模块系统 (Module System) 有点复杂,甚至被称为"新手劝退三大难"之一(另外俩是所有权和生命周期)。 1. 家族谱系:Package, Crate, Module 首先要分清三个概念: Package (包):Cargo 的功能单元。包含 Cargo.toml。一个 Package 可以包含多个 Binary Crate,但只能有一个 Library Crate。 Crate (箱):编译单元。main.rs 是二进制 Crate 的根,lib.rs 是库 Crate 的根。 Module (模块):代码组织单元。用 mod 关键字定义。 层级关系:Package -> (contains) -> Crates -> (contains) -> Modules。 ...

2025-02-06 · 2 min · 243 words · 老墨