diff --git a/src/ch15-05-interior-mutability.md b/src/ch15-05-interior-mutability.md index d169bcc..d9b7626 100644 --- a/src/ch15-05-interior-mutability.md +++ b/src/ch15-05-interior-mutability.md @@ -242,7 +242,7 @@ impl Messenger for MockMessenger { } ``` -示例 15-26:在同一作用域中创建两个可变引用并观察 `RefCell` panic +示例 15-23:在同一作用域中创建两个可变引用并观察 `RefCell` panic 这里为 `borrow_mut` 返回的 `RefMut` 智能指针创建了 `one_borrow` 变量。接着用相同的方式在变量 `two_borrow` 创建了另一个可变借用。这会在相同作用域中创建一个可变引用,这是不允许的。当运行库的测试时,示例 15-23 编译时不会有任何错误,不过测试会失败: diff --git a/src/ch15-06-reference-cycles.md b/src/ch15-06-reference-cycles.md index f948b4d..53d51a6 100644 --- a/src/ch15-06-reference-cycles.md +++ b/src/ch15-06-reference-cycles.md @@ -4,7 +4,7 @@ >
> commit 1fedfc4b96c2017f64ecfcf41a0a07e2e815f24f -Rust 的内存安全保证使其难以意外的制造永远也不会被清理的内存(被称为 **内存泄露**(*memory leak*)),但并不是不可能。完全的避免内存泄露并不是同在编译时拒绝数据竞争一样为 Rust 的保证之一,这意味着内存泄露在 Rust 被认为是内存安全的。这一点可以通过 `Rc` 和 `RefCell` 看出:有可能会创建个个项之间相互引用的引用。这会造成内存泄露,因为每一项的引用计数将永远也到不了 0,其值也永远也不会被丢弃。 +Rust 的内存安全保证使其难以意外地制造永远也不会被清理的内存(被称为 **内存泄露**(*memory leak*)),但并不是不可能。完全地避免内存泄露并不是同在编译时拒绝数据竞争一样为 Rust 的保证之一,这意味着内存泄露在 Rust 被认为是内存安全的。这一点可以通过 `Rc` 和 `RefCell` 看出:有可能会创建个个项之间相互引用的引用。这会造成内存泄露,因为每一项的引用计数将永远也到不了 0,其值也永远也不会被丢弃。 ### 制造引用循环