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

10【借用·规则】引用 (``, `mut`):安全、高效地访问数据

系列: Rust 精进之路:构建可靠、高效软件的底层逻辑
作者: 码觉客
发布日期: 2025年4月20日

引言:所有权的“限制”与“变通”之道

在上一篇【所有权·核心】中,我们揭示了 Rust 如何通过所有权规则和移动 (Move) 语义来保证内存安全,避免了垃圾回收器的同时,也防止了诸如二次释放等内存错误。然而,我们也看到,所有权的转移有时显得过于“霸道”——一旦将值(如 String)传递给函数或赋给新变量,原来的所有者就失去了对它的控制权。

如果我们仅仅是想让一个函数读取一下数据,或者临时修改一下数据,并不希望交出所有权,该怎么办呢?难道每次都得把所有权移交过去,再让函数把所有权还回来吗?这显然不够方便,有时甚至是不可能的。

为了解决这个问题,Rust 引入了借用 (Borrowing) 的概念,通过引用 (References) 来实现。引用允许我们创建一个指向值的“指针”,让其他代码可以访问这个值,而无需获得其所有权。这就像你把书借给朋友看

相关文章:

  • 每日一题——最小测试用例集覆盖问题
  • javaSE.二叉树的遍历
  • 【Vim】vim的简单使用
  • 【后端开发】MyBatis
  • 26考研 | 王道 | 数据结构 | 第六章 图
  • C#/.NET/.NET Core技术前沿周刊 | 第 35 期(2025年4.14-4.20)
  • GESP2024年12月认证C++八级( 第一部分选择题(6-10))
  • ArcPy Mapping 模块基础(下)
  • 我的电视 1.0.2 | 提供央视、卫视及地方直播服务的软件
  • 学习笔记—C++—string(一)
  • 论文阅读:2024 ICML Is DPO Superior to PPO for LLM Alignment? A Comprehensive Study
  • Java 线程池
  • Redis日常学习(一)
  • 存储/服务器内存的基本概念简介
  • 系统思考与理性决策
  • 基于FPGA的四层电梯设计系统设计和实现
  • leetcode205.同构字符串
  • 【读书笔记·VLSI电路设计方法解密】问题63:为什么可测试性设计对产品的财务成功至关重要
  • 个人所得税
  • 缓存 --- Redis性能瓶颈和大Key问题
  • 海拔四百公里的救赎
  • 亚太峰会上哪个词最火?我们问了问AI
  • 中马签署互免签证协定,飞往马来西亚的机票搜索量日环比增长超1倍
  • 青创上海-2025浦东徒步行倒计时1天,明日浦东世博文化公园不见不散
  • 中国足协、中足联:对中超浙江队外援阿隆·布彭扎不幸离世表示深切哀悼
  • 女子斥“老法师”涉嫌偷拍?街头摄影的边界应该怎么定?