回答編集履歴

1

誤字修正

2022/12/31 08:39

投稿

ajndpq
ajndpq

スコア9

test CHANGED
@@ -1,6 +1,6 @@
1
1
  質問が閉まってるのに回答するのがマナー的にどうなのか分かりませんが、役に立てばと思い、追加情報を述べます。
2
2
 
3
- 構造体の持つフィールドアテにした書き方をしたい場合は、そのフィールド自体を構造体にして、それにメソッドを紐づける方法もあります。質問文の改良方法とよく比較吟味して選択すべきですが、こちらの方法の方が後々楽になることもあります。個人的には、こちらの方法が、Rust の「継承よりコンポジション」の姿勢と合致していると思っています。
3
+ 構造体の持つフィールドアテにした書き方をしたい場合は、そのフィールド自体を構造体にして、それにメソッドを紐づける方法もあります。質問文の改良方法とよく比較吟味して選択すべきですが、こちらの方法の方が後々楽になることもあります。個人的には、こちらの方法が、Rust の「継承よりコンポジション」の姿勢と合致していると思っています。
4
4
 
5
5
  具体的には、店で売られている ``Apple`` は ``Tag`` (値札) を持ち、その ``Tag`` に ``value`` が書かれていると考えます。``how_money`` は店で売られていて (``Saled``)、 ``Tag`` が付いているものに対するメソッドなので、``Tag`` に紐づけます。
6
6