|
|
@ -99,7 +99,7 @@ fn main() {
|
|
|
|
|
|
|
|
|
|
|
|
### 自定义智能指针
|
|
|
|
### 自定义智能指针
|
|
|
|
|
|
|
|
|
|
|
|
为了体会默认智能指针的行为不同于引用,让我们创建一个类似于标准库提供的 `Box<T>` 类型的只能指针。接着会学习如何增加使用解引用运算符的功能。
|
|
|
|
为了体会默认智能指针的行为不同于引用,让我们创建一个类似于标准库提供的 `Box<T>` 类型的智能指针。接着会学习如何增加使用解引用运算符的功能。
|
|
|
|
|
|
|
|
|
|
|
|
从根本上说,`Box<T>` 被定义为包含一个元素的元组结构体,所以示例 15-10 以相同的方式定义了 `MyBox<T>` 类型。我们还定义了 `new` 函数来对应定义于 `Box<T>` 的 `new` 函数:
|
|
|
|
从根本上说,`Box<T>` 被定义为包含一个元素的元组结构体,所以示例 15-10 以相同的方式定义了 `MyBox<T>` 类型。我们还定义了 `new` 函数来对应定义于 `Box<T>` 的 `new` 函数:
|
|
|
|
|
|
|
|
|
|
|
|