Rust 入门笔记
•1 分钟阅读•后端
为什么学 Rust
性能媲美 C++,安全性接近 Haskell。没有 GC,没有空指针,没有数据竞争。
所有权
Rust 最独特的特性:
- 每个值有且只有一个所有者
- 所有者离开作用域,值被释放
- 值不能同时被两个变量拥有
let s1 = String::from("hello");
let s2 = s1; // s1 失效,所有权转移给 s2
借用
不转移所有权地访问值:
fn main() {
let s = String::from("hello");
print_len(&s); // 不可变借用
println!("{}", s); // s 仍然可用
}