Rust编程语言快速入门指南
一、Rust核心特点
- 内存安全
- 通过所有权系统(Ownership)和借用检查器(Borrow Checker)在编译期消除内存错误
- 无垃圾回收机制(GC),避免运行时开销
- 零成本抽象
- 高级语法特性(如trait、泛型)编译后等效于手写底层代码
- 并发安全
- 通过类型系统保证线程安全,避免数据竞争
- 跨平台支持
- 支持Linux/Windows/macOS,可编译为WebAssembly
- 混合编程范式
- 支持函数式、面向对象和系统级编程
二、技术核心解析
1. 所有权系统(核心难点)
- 每个值有唯一所有者(变量)
- 离开作用域时自动释放资源
- 赋值操作默认转移所有权(move语义)
let s1 = String::from("hello");
let s2 = s1; // s1所有 权转移给s2,s1不再可用
2. 借用与生命周期
- 通过引用(&)实现借用
- 编译器自动分析引用的生命周期
fn main() {
let s = String::from("hello");
let len = calculate_length(&s);
println!("{} length: {}", s, len); // s仍然有效
}
fn calculate_length(s: &String) -> usize {
s.len()
}
3. 模式匹配
- 强大的
match表达式 - 解构结构体/枚举
enum Message {
Quit,
Write(String),
}
fn handle_message(msg: Message) {
match msg {
Message::Quit => println!("Quit"),
Message::Write(text) => println!("Text: {}", text),
}
}