diff --git a/book/contents/advance/smart-pointer/intro.md b/book/contents/advance/smart-pointer/intro.md index 38607373..3b4b1769 100644 --- a/book/contents/advance/smart-pointer/intro.md +++ b/book/contents/advance/smart-pointer/intro.md @@ -1,7 +1,7 @@ # 智能指针 在各个编程语言中,指针的概念几乎都是相同的:**指针是一个包含了内存地址的变量,该内存地址引用或者指向了另外的数据**。 -在 Rust 中,最常见的指针类型是引用,引用通过 `&` 符号表示。不同于其它语言,引用在 Rust 中被赋予了更深层次的含义那就是:借用了其它变量的值。引用本身很简单,除了指向某个值外并没有其它的功能,也不会造成性能上的额外损耗,因此是 Rust 中使用最多的指针类型。 +在 Rust 中,最常见的指针类型是引用,引用通过 `&` 符号表示。不同于其它语言,引用在 Rust 中被赋予了更深层次的含义,那就是:借用其它变量的值。引用本身很简单,除了指向某个值外并没有其它的功能,也不会造成性能上的额外损耗,因此是 Rust 中使用最多的指针类型。 而智能指针则不然,它虽然也号称指针,但是它是一个复杂的家伙:通过比引用更复杂的数据结构,包含比引用更多的信息,例如元数据,当前长度,最大可用长度等。总之,Rust 的智能指针并不是独创,在 C++ 或者其他语言中也存在相似的概念。