太好了!我给你整理一个 Rust 基础语法清单(中英对照),涵盖你入门阶段最关键的概念和语法点,方便快速查阅和记忆。
Rust 基础语法清单(中英对照)
| 中文概念 | 英文术语 | 示例代码 | 说明 |
|---|---|---|---|
| 变量绑定 | Variable binding | let x = 5; let mut y = 6; |
默认不可变,用 mut 可变 |
| 常量 | Constant | const MAX_POINTS: u32 = 100_000; |
必须标注类型,永远不可变 |
| 数据类型 | Data types | i32, u32, f64, bool, char, String |
Rust 是强类型语言 |
| 函数 | Function | fn add(a: i32, b: i32) -> i32 { a + b } |
参数类型和返回类型必须标注 |
| 表达式 & 语句 | Expressions & Statements | let y = { let x = 3; x + 1 }; |
Rust 区分表达式(有值)和语句(无值) |
| 控制流 | Control flow | if, else, loop, while, for |
语法类似 C,但更安全 |
| 所有权 | Ownership | let s1 = String::from("hello"); let s2 = s1; |
值的所有权转移后,原变量不可再用 |
| 借用 | Borrowing | let s2 = &s1; let mut s3 = &mut s1; |
&T 只读借用,&mut T 可写借用 |
| 生命周期 | Lifetimes | fn longest<'a>(x: &'a str, y: &'a str) -> &'a str |
保证引用在有效范围内 |
| 数组 | Array | let a = [1, 2, 3, 4]; |
固定长度,类型一致 |
| 切片 | Slice | let s = &a[1..3]; |
指向数组部分数据的引用 |
| 元组 | Tuple | let t: (i32, f64, char) = (1, 2.0, 'a'); |
可存储不同类型的组合 |
| 枚举 | Enum | enum Direction { Up, Down, Left, Right } |
用于模式匹配和状态表示 |
| 结构体 | Struct | struct Person { name: String, age: u8 } |
自定义数据类型 |
| 模式匹配 | Match | match value { 1 => "one", _ => "other" } |
强大的分支选择工具 |
| Trait(接口) | Trait | trait Speak { fn speak(&self); } |
定义行为规范,类似接口 |
| 泛型 | Generics | fn largest<T: PartialOrd>(list: &[T]) -> T { ... } |
支持类型参数化 |
| 错误处理 | Error handling | Result<T, E>, Option<T> |
安全替代异常机制 |
| 智能指针 | Smart pointer | Box<T>, Rc<T>, Arc<T>, RefCell<T> |
管理堆上数据和共享所有权 |
| 模块 & crate | Modules & Crates | mod my_mod; use my_mod::func; |
组织代码和依赖管理 |
| 宏 | Macro | println!("Hello {}", name); |
编译时代码生成,类似模板 |
| 注释 | Comment | // 单行 /* 多行 */ |
普通注释和文档注释 /// |
💡 学习建议:
- 先用 变量、函数、if/loop、数组/元组、枚举、结构体 搭建小项目。
- 再深入 所有权、借用、生命周期、错误处理,这些是 Rust 的核心。
- 最后学习 Trait、泛型、智能指针,能写出可复用、高性能的 Rust 代码。
如果你愿意,我可以帮你做一个 Rust 基础语法思维导图,把这些概念从“基础 → 核心特性 → 高级特性”可视化,非常适合快速复习。
你希望我帮你做吗?