MSDN では、軽量オブジェクトが必要な場合は構造体を使用する必要があるとされています。クラスよりも構造体の方が適しているシナリオは他にもありますか?
忘れている人もいるかもしれません:
- 構造体にはメソッドを持たせることができます。
- 構造体は継承できません。
構造体とクラスの技術的な違いは理解していますが、構造体をいつ使用すればよいのかがよくわかりません。
ベストアンサー1
MSDN に答えがあります:クラスと構造の選択。
基本的に、そのページには 4 項目のチェックリストがあり、自分のタイプがすべての基準を満たしていない限りクラスを使用するように指示されています。
型が以下の特性をすべて備えていない限り、構造体を定義しないでください。
- プリミティブ型 (整数、倍精度など) と同様に、論理的に単一の値を表します。
- インスタンス サイズが 16 バイト未満です。
- それは不変です。
- 頻繁に箱詰めする必要はありません。