10.2 核心创新:所有权系统

Rust最具革命性的设计是所有权(Ownership)系统

  1. 每个值只有一个所有者:一个变量拥有一个值。当所有者离开作用域,值被自动释放。
  2. 借用(Borrowing):可以不可变借用(&T)或可变借用(&mut T)。同一时间只能有一个可变借用或多个不可变借用。
  3. 生命周期(Lifetime):编译器追踪引用的有效范围,确保引用永远不指向已释放的内存。

这些规则在编译时执行,不需要垃圾回收器,因此Rust的性能接近C/C++,但避免了它们的内存安全问题。