Cell Rust · 常用类型
单线程下的内部可变性容器,允许在拥有不可变引用时修改里面的值。
怎么用
let 变量 = Cell::new(值); 用 .set()/.get() 读写,用于单线程内部可变
小例子
use std::cell::Cell;
let 计数 = Cell::new(1);
计数.set(2);
println!("{}", 计数.get());
运行结果
2
提醒:只有 .get() 要求 T 实现 Copy;存非 Copy 类型(如 String)用 .set()/.replace()/.take() 也可以;不能返回内部值的引用
在代码里遇到不认识的词?打开代码点读机,点一下就懂 → ← Rust全部词条