From 781baaf306241b897709b8fad1f40f9bedd27d83 Mon Sep 17 00:00:00 2001 From: chenxuuu Date: Wed, 12 Jan 2022 10:58:51 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E8=A1=A8=E6=A0=BC=E7=AC=A6=E5=8F=B7?= =?UTF-8?q?=E6=89=93=E6=88=90=E5=85=A8=E8=A7=92=E4=BA=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- book/contents/advance/circle-self-ref/circle-reference.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/book/contents/advance/circle-self-ref/circle-reference.md b/book/contents/advance/circle-self-ref/circle-reference.md index eb0518b6..e526b6c8 100644 --- a/book/contents/advance/circle-self-ref/circle-reference.md +++ b/book/contents/advance/circle-self-ref/circle-reference.md @@ -115,7 +115,7 @@ fatal runtime error: stack overflow | 不拥有所有权 | 拥有值的所有权 | | 不阻止值被释放(drop) | 所有权计数归零,才能drop | | 引用的值存在返回Some,不存在返回None | 引用的值必定存在 | -| 通过`upgrade`取到`Option>`,然后再取值 | 通过`Deref`自动解引用,取值无需任何操作| +| 通过`upgrade`取到`Option>`,然后再取值 | 通过`Deref`自动解引用,取值无需任何操作 | 通过这个对比,可以非常清晰的看出`Weak`为何这么弱,而这种弱恰恰非常适合我们实现以下的场景: @@ -290,4 +290,4 @@ fn main() { ## 总结 本文深入讲解了何为循环引用以及如何使用`Weak`来解决,同时还结合`Rc`、`RefCell`、`Weak`等实现了两个有实战价值的例子,让大家对智能指针的使用更加融会贯通。 -至此,智能指针一章即将结束(严格来说还有一个Mutex放在多线程一章讲解),而Rust语言本身的学习之旅也即将结束,后面我们将深入多线程、项目工程、应用实践、性能分析等特色专题,来一睹Rust在这些领域的风采。 \ No newline at end of file +至此,智能指针一章即将结束(严格来说还有一个Mutex放在多线程一章讲解),而Rust语言本身的学习之旅也即将结束,后面我们将深入多线程、项目工程、应用实践、性能分析等特色专题,来一睹Rust在这些领域的风采。