当前位置: 首页 > news >正文

rust语言学习笔记(指针二)Rc<T>(单线程引用计数)

2.1 共享只读数据(单线程)

usestd::rc::Rc;fnmain(){letv=Rc::new(10);// 创建一个 Rc 指针,初始引用计数为 1letv2=Rc::clone(&v);// 创建一个 Rc 指针,引用计数增加 1,(推荐写法)letv3=v.clone();// 创建一个 Rc 指针,引用计数增加 1// *v 是解引用操作,类型是 i32letvalue:i32=*v;println!("*v 的类型是 i32,值: {}",value);// v 是 Rc<i32> 类型,是智能指针// 但 Debug trait 会自动解引用打印内部值println!("v 的类型是 Rc<i32>,Debug 打印: {:?}",v);println!("v2 的类型是 Rc<i32>,Debug 打印: {:?}",v2);println!("v3 的类型是 Rc<i32>,Debug 打印: {:?}",v3);println!("引用计数: {}",Rc::strong_count(&v));}

2.2 构建递归数据结构(如链表、树)

usestd::rc::Rc;#[derive(Debug)]enumList{Cons(i32,Rc<List>),Nil,}usecrate::List::{Cons,Nil};fnmain(){letlist1=Rc::new(Cons(1,Rc::new(Nil)));letlist2=Cons(2,Rc::clone(&list1));// 共享 list1 的所有权letlist3=Cons(3,Rc::clone(&list1));// 共享 list1 的所有权println!("{:?}",list2);println!("{:?}",list3);}
http://www.cnnetsun.cn/news/3089184.html

相关文章:

  • 马斯克宣布Grok 4.5私测,“接近Opus”是噱头还是实力?
  • Cursor Composer 深度测评:AI 原生 IDE 真的能胜任百万级项目的跨文件重构吗?
  • 辞职备考一建,可不可行?
  • 漳州某综合楼结构健康自动化监测项目
  • 终极MANO手部模型指南:从零开始构建逼真3D手部动画
  • 百度网盘macOS版破解插件完整指南:免费解锁SVIP与加速下载
  • B站评论采集实践:如何快速获取评论数据并接入AI分析平台
  • Docker 完整保姆级教程
  • Open Claw 搭配淘宝 item\_get\_pro 接口,5 分钟搭建自动化竞品监控 爆款选品系统(完整可运行 Python 教程)
  • 聊聊移动APP的性能指标优化 上
  • 吴恩达《深度学习》之看懂超参数搜索的“对数标尺”
  • 语文提分全攻略,阅读理解+作文双板块突破
  • 恶意软件窃取 Chrome 会话 Cookie 的攻击机制与防御研究
  • 实用小工具上线!BlockSec USDT拉黑查询网站,一键核验地址冻结状态
  • 101、SQLAlchemy ORM 核心(二):关联查询、懒加载、N+1 问题与事件钩子
  • Wu.CommTool工业通信调试工具技术实现深度解析:基于C WPF的模块化架构设计
  • 《深度学习及应用》期末考试计算题回忆版
  • 终极指南:5步为Foobar2000配置三大音乐平台逐字歌词
  • 国企个人工作总结PPT:从无从下手到条理清晰,保姆级教程请收好
  • LTC6904与PIC18F46K80构建可编程方波发生器
  • 深入解析核心组件:企业级USB隔离架构的安全体系与日志API开发实战指南
  • 终极指南:如何在VS Code中使用Mermaid图表预览插件快速绘制专业图表
  • Three.js 延迟光照教程
  • OpenCV端侧处理效率提升系列(二): 硬件加速工具(GPU,NPU)
  • 低成本高精度6DOF运动追踪系统设计与实现
  • 2026护栏厂家采购干货:锌钢、边坡、球场防护工程厂家甄选指南
  • 文件改名一个个改太麻烦?五款批量重命名工具实操记录
  • 终极指南:如何用Python命令行工具完美下载网易云音乐无损资源
  • AI验布机选择指南:五个核心指标比价格更重要
  • 微信聊天记录误删怎么办?官方完整恢复教程整理