回答編集履歴
1
ローカル変数のmutの非一貫性の例として `Cell<T>` のほかに `Box<T>` を追加
test
CHANGED
@@ -114,7 +114,7 @@
|
|
114
114
|
|
115
115
|
|
116
116
|
|
117
|
-
つまり、 `let mut` は「そのローカル変数自体を書き換えられる」という状況を可能な限り再現する規則になっています。しかし、 `let x : Cell<T>` とすれば `x` 自体を書き換えられるので、あくまで「可能な限り再現する」という言い方が妥当だと思います。
|
117
|
+
つまり、 `let mut` は「そのローカル変数自体を書き換えられる」という状況を可能な限り再現する規則になっています。しかし、 `let x : Cell<T>` とすれば `x` 自体を書き換えられるので、あくまで「可能な限り再現する」という言い方が妥当だと思います。(また逆に、 `let x : Box<T>` では `T` はヒープ上にあるにも関わらずimmutable扱いになります。)
|
118
118
|
|
119
119
|
|
120
120
|
|