回答編集履歴

1

説明を少し修正しました

2021/05/03 01:00

投稿

tatsuya6502
tatsuya6502

スコア2046

test CHANGED
@@ -58,7 +58,7 @@
58
58
 
59
59
 
60
60
 
61
- `Fn`が実装されていない理由ですが、`move_x()`が`&mut self`(ここでの`self`は`Point`)を要求するからです。`Fn`が要求するメソッドは`call(&self, ..)`ですが、`&`をとおして`&mut`を得ることができないからです。のことはご質問のコードに以下のコードを追加することで確認できます。
61
+ `Fn`が実装されていない理由ですが、`move_x()`が`&mut self`(ここでの`self`は`Point`)を要求するからです。`Fn`が要求するメソッドは`call(&self, ..)`ですが、`&`をとおして`&mut`を得ることができず、従って`Fn`を実装できません。`&`をとおして`&mut`を得られないことはご質問のコードに以下のコードを追加することで確認できます。
62
62
 
63
63
 
64
64