mirror of
https://github.com/KaiserY/trpl-zh-cn
synced 2024-11-08 16:21:19 +08:00
措辞难以理解,润色完可以理解更佳。
其中,修正一个typo, s/价差的/检查的/
This commit is contained in:
parent
185a7d7be4
commit
538b49620a
@ -56,8 +56,8 @@ RefCell<T> is, perhaps a succinct round up would help? -->
|
||||
如下为选择 `Box<T>`,`Rc<T>` 或 `RefCell<T>` 的理由:
|
||||
|
||||
- `Rc<T>` 允许相同数据有多个所有者;`Box<T>` 和 `RefCell<T>` 有单一所有者。
|
||||
- `Box<T>` 允许在编译时检查的不可变或可变借用;`RefCell<T>` 允许在运行时价差的不可变或可变借用
|
||||
- 因为 `RefCell<T>` 允许在运行时检查的可变借用,可以在即便 `RefCell<T>` 自身是不可变的情况下修改其内部的值。
|
||||
- `Box<T>` 允许在编译时执行不可变(或可变)借用检查;`Rc<T>`仅允许在编译时执行不可变借用检查;`RefCell<T>` 允许在运行时执行不可变(或可变)借用检查。
|
||||
- 因为 `RefCell<T>` 允许在运行时执行可变借用检查,所以我们可以在即便 `RefCell<T>` 自身是不可变的情况下修改其内部的值。
|
||||
|
||||
最有一个理由便是指 **内部可变性** 模式。让我们看看何时内部可变性是有用的,并讨论这是如何成为可能的。
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user