Rust基础入门:从零开始掌握语法特性
📚 共计 30 章节
01
Rust入门
Rust发展史 · 核心优势 · 环境搭建 (rustup, cargo, VS Code)
内存安全
零成本抽象
无畏并发
02
Cargo与项目管理
cargo new · Cargo.toml · build/run/check/test · 依赖管理
crates.io
工作空间
03
变量与可变性
let/mut · 变量遮蔽 · const/static · 作用域
Shadowing
不可变
04
基本数据类型
标量 · 复合类型 · 类型推断与注解
整数/浮点
元组/数组
05
函数与注释
函数定义 · 返回值 · 语句/表达式 · 文档注释
///
表达式
06
控制流(一)
if/else · loop/while/for · break/continue · 循环标签
循环
标签
07
所有权(一)
所有权规则 · 栈/堆 · String与&str · Move语义
内存
移动
08
所有权(二)
Clone/Copy · 函数传参 · 引用与借用
借用
Copy
09
引用与借用
引用规则 · 可变/不可变引用 · 悬垂引用 · 作用域
&mut
生命周期
10
Slice类型
字符串切片 · 数组切片 · 函数参数 · 字面量本质
&str
切片
11
结构体(一)
定义/实例化 · 元组结构体 · 单元结构体 · 所有权
struct
Tuple Struct
12
结构体(二)
方法 impl · 关联函数 · 多个impl · &self/&mut self
方法
关联函数
13
枚举与模式匹配(一)
Option/Result · match · 穷尽性检查
枚举
match
14
枚举与模式匹配(二)
if let · while let · 解构结构体/元组/枚举
if let
解构
15
模块系统
Package/Crate · mod定义 · use/pub · 路径
模块
可见性
16
常用集合(一)Vector
Vec创建 · 增删改查 · 遍历 · 枚举技巧
Vec
动态数组
17
常用集合(二)String
创建/更新 · 拼接(+/format!) · 索引/切片 · UTF-8
String
UTF-8
18
常用集合(三)HashMap
创建/插入/获取 · 所有权 · 更新策略
HashMap
K-V
19
错误处理(一)
panic! · Result · ?运算符 · unwrap/expect
错误处理
Result
20
错误处理(二)
自定义错误 · 传播 · panic! vs Result
错误类型
?运算符
21
泛型
泛型函数/结构体/枚举 · 单态化
泛型
单态化
22
Trait(一)
定义/实现 · 默认实现 · impl Trait · Trait Bound
Trait
接口
23
Trait(二)
返回Trait · blanket implementation · 关联类型
关联类型
默认实现
24
生命周期(一)
生命周期注解 'a · 函数中生命周期 · 省略规则
生命周期
'a
25
生命周期(二)
结构体生命周期 · 'static · 与Trait Bound结合
'static
结构体
26
测试
#[test] · assert! · 单元/集成测试 · #[cfg(test)]
测试
断言
27
闭包
闭包语法 · 类型推断 · Fn/FnMut/FnOnce · 参数
闭包
捕获
28
迭代器
Iterator · next · 消费/适配器 · 自定义迭代器
迭代器
map/filter
29
智能指针(一)
Box
· Deref · Drop · 递归类型
Box
堆分配
30
智能指针(二)
Rc
· RefCell
· 组合使用 · Weak
Rc
RefCell
循环引用