Rust 专题
您的位置:rust > Rust专题 > Rust智能指针
Rust智能指针
作者:--    发布时间:2019-11-20 10:52:54

智能指针是一种数据结构,其行为类似于指针,同时提供内存管理或绑定检查等附加功能。
智能指针可跟踪其指向的内存,还可用于管理其他资源,如fils句柄和网络连接。
智能指针最初用于c++语言。
引用也是一种指针,但除了引用数据之外,它没有其他功能。引用由&运算符表示。
智能指针提供的功能超出了参考提供的功能。 智能指针提供的最常见功能是“引用计数智能指针类型”。 此功能能够通过跟踪所有者来拥有多个数据所有者,如果没有所有者,则可以清除数据。
引用是仅借用数据的指针,而智能指针是拥有它们指向的数据的指针。

智能指针的类型:

  • box <t>box <t>是一个智能指针,指向在类型为t的堆上分配的数据,其中“t”是数据的类型。它用于将数据存储在堆上而不是堆栈上。
  • deref <t>deref <t>是一个智能指针,用于自定义解除引用运算符(*)的行为。
  • drop <t>drop <t>是一个智能指针,用于在变量超出范围时从堆内存中释放空间。
  • rc <t>rc <t>代表参考计数指针。它是一个智能指针,用于记录存储在堆上的值的引用数。
  • refcell <t>refcell <t>是一个智能指针,允许借用可变数据,即使数据是不可变的。这个过程被称为内部可变性。

网站声明:
本站部分内容来自网络,如您发现本站内容
侵害到您的利益,请联系本站管理员处理。
联系站长
373515719@qq.com
关于本站:
编程参考手册