gpt4 book ai didi

pointers - 何时使用 Box 而不是引用?

转载 作者:行者123 更新时间:2023-11-29 08:10:07 24 4
gpt4 key购买 nike

我是 Rust 的新手,我想了解什么时候应该使用 Box 而不是常规引用。

我能找到的所有示例都展示了如何使用 Box,但是没有一个示例说明在什么情况下应该使用它们而不是常规的 & 引用。

最佳答案

(对 Shepmaster 的出色回答的补充:另一种思考所有权的方式)

您始终需要思考:值(value)存在在哪里? 🏠

例如,数据可以存在于堆栈中、可执行文件的某个特殊位置或Box 中。另一方面,引用不是存在的地方——它只是指向一些存在其他地方的数据。所以:

  • 如果您知道您要使用的数据有一个住所:您通常可以只使用一个引用(地址)来访问它(访问它 ✈)。
  • 如果你的数据没有地方住,那就把它放在一个盒子里,给它一个家🏠♥

章节ownershipborrowing Rust 书中的内容是了解这些概念的好方法。

关于pointers - 何时使用 Box 而不是引用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36117057/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com