01
Rust初印象
诞生故事 · 解决了什么问题 · 安全又高效
理念背景
02
工欲善其事
安装rustup/cargo/rustc · 配置VS Code
环境工具链
03
Hello, World!
cargo创建项目 · main函数 · 编译与运行
入门cargo
04
变量与可变性
let/mut · shadowing · const使用场景
变量不可变
05
数据类型 (上)
整数/浮点/布尔/字符 · 默认推导
标量类型
06
数据类型 (下)
元组tuple · 数组array · 模式匹配
复合解构
07
函数
定义/参数/返回值 · 表达式与语句
函数表达式
08
注释与文档
行/块注释 · /// 文档注释
注释文档
09
控制流 (上)
if/else if/else · let语句中使用if
条件if
10
控制流 (下)
loop/while/for · 遍历集合
循环迭代
11
所有权 (上)
所有权规则 · String · 作用域
所有权内存
12
所有权 (中)
Move与Clone · 栈与堆数据
移动克隆
13
所有权 (下)
引用与借用 · 可变引用 · 悬垂引用
借用引用
14
切片 (Slice)
字符串切片 · 数组切片 · 本质是引用
切片引用
15
结构体 (上)
定义/实例化 · 元组结构体 · 单元结构体
struct自定义
16
结构体 (下)
方法impl · 关联函数 · 自动解引用
方法impl
17
枚举与模式匹配
枚举定义 · Option · match控制流
enummatch
18
if let与while let
简洁控制流 · 单模式匹配
if letwhile let
19
模块系统
Package/Crate/Module · use/pub
模块可见性
20
常用集合 (上)
Vector · 创建/增删改查/遍历
Vec动态数组
21
常用集合 (中)
String · 创建/更新/拼接/索引与切片
String文本
22
常用集合 (下)
HashMap · 创建/插入/访问/更新
HashMap键值对
23
错误处理 (上)
panic! · 不可恢复错误 · Result
错误panic
24
错误处理 (下)
?运算符 · 错误传播 · 何时panic
?运算符传播
25
泛型
函数/结构体泛型 · 单态化性能
泛型单态化
26
Trait (上)
定义Trait · 为类型实现 · 默认实现
Trait接口
27
Trait (下)
Trait作为参数 · Bound · 返回impl Trait
Trait Bound多态
28
生命周期 (上)
悬垂引用 · 借用检查器 · 生命周期注解
生命周期借用检查
29
生命周期 (下)
结构体生命周期 · 省略规则 · 'static
'static省略
30
综合实战
迷你CLI命令行工具 · 串联所学
项目CLI