improve some translation and fix typo in ch15

pull/280/head
Lam 6 years ago
parent feb446e331
commit 9627aa9965

@ -242,7 +242,7 @@ impl Messenger for MockMessenger {
}
```
<span class="caption">示例 15-26:在同一作用域中创建两个可变引用并观察 `RefCell<T>` panic</span>
<span class="caption">示例 15-23:在同一作用域中创建两个可变引用并观察 `RefCell<T>` panic</span>
这里为 `borrow_mut` 返回的 `RefMut` 智能指针创建了 `one_borrow` 变量。接着用相同的方式在变量 `two_borrow` 创建了另一个可变借用。这会在相同作用域中创建一个可变引用,这是不允许的。当运行库的测试时,示例 15-23 编译时不会有任何错误,不过测试会失败:

@ -4,7 +4,7 @@
> <br>
> commit 1fedfc4b96c2017f64ecfcf41a0a07e2e815f24f
Rust 的内存安全保证使其难以意外制造永远也不会被清理的内存(被称为 **内存泄露***memory leak*)),但并不是不可能。完全避免内存泄露并不是同在编译时拒绝数据竞争一样为 Rust 的保证之一,这意味着内存泄露在 Rust 被认为是内存安全的。这一点可以通过 `Rc<T>``RefCell<T>` 看出:有可能会创建个个项之间相互引用的引用。这会造成内存泄露,因为每一项的引用计数将永远也到不了 0其值也永远也不会被丢弃。
Rust 的内存安全保证使其难以意外制造永远也不会被清理的内存(被称为 **内存泄露***memory leak*)),但并不是不可能。完全避免内存泄露并不是同在编译时拒绝数据竞争一样为 Rust 的保证之一,这意味着内存泄露在 Rust 被认为是内存安全的。这一点可以通过 `Rc<T>``RefCell<T>` 看出:有可能会创建个个项之间相互引用的引用。这会造成内存泄露,因为每一项的引用计数将永远也到不了 0其值也永远也不会被丢弃。
### 制造引用循环

Loading…
Cancel
Save