代码点读机 / Rust / Rc

Rc Rust · 常用类型

单线程下的引用计数智能指针,让一份数据被多个所有者共享,计数归零时释放。

怎么用

let 变量 = Rc::new(值); 再用 Rc::clone(&变量) 增加引用,用于单线程共享所有权

小例子

use std::rc::Rc;
let a = Rc::new(5);
let b = Rc::clone(&a);
println!("{} {}", a, b);

运行结果

5 5

提醒:Rc::clone 只增加计数,不复制数据;不能跨线程

官方文档:https://doc.rust-lang.org/std/rc/struct.Rc.html

在代码里遇到不认识的词?打开代码点读机,点一下就懂 → ← Rust全部词条