From 11da9b42e17e1c614b06f435a827b546d76ca531 Mon Sep 17 00:00:00 2001 From: "Peng Hailin," Date: Mon, 15 May 2023 21:43:43 +0800 Subject: [PATCH] Update Ch15 --- src/Ch15_Smart_Pointers.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/Ch15_Smart_Pointers.md b/src/Ch15_Smart_Pointers.md index b428c5c..60b98bb 100644 --- a/src/Ch15_Smart_Pointers.md +++ b/src/Ch15_Smart_Pointers.md @@ -1112,14 +1112,13 @@ b 的下一条目 = Some(RefCell { value: Cons(5, RefCell { value: Nil }) }) 由于 `Weak` 所引用的值可能已被弃用,因此要对 `Weak` 所指向的值执行任何操作,咱们都必须确保该值仍然存在。通过在 `Weak` 实例上调用 `upgrade` 方法来做到这一点,他将返回一个 `Option>`。如果 `Rc` 的值还没有被弃用,咱们将得到一个 `Some` 的结果;如果 `Rc` 的值已被弃用,咱们将得到一个 `None` 的结果。因为 `upgrade` 返回的是 `Option>`,Rust会确保 `Some` 和 `None` 的情况都得到处理,而且不会出现无效的指针。 -作为一个例子,我们不是使用其项目只知道下一个项目的列表数据结构,而是将创建一个其项目会清楚其子项目 *和* 其父项目的树。 +作为一个例子,我们不是使用其项目只知道下一项目的列表数据结构,而是将创建一个其项目了解其子项目 *及* 其父项目的树。 #### 创建一个树形数据结构:带有子节点的节点 **Creating a Tree Data Structure: a Node with Child Nodes** - 作为开头,这里将构建有着了解其子节点的一些节点。这里将创建出一个名为 `Node` 的结构体,保存着自身的 `i32` 值,以及到其子 `Node` 值的一些引用。 文件名:`src/main.rs`