名前付き構造体

C や C++ と同様に、Rust はカスタム構造体をサポートしています。

XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Speaker Notes

This slide should take about 10 minutes.

キーポイント:

  • 構造体は、C や C++ においてと同じように機能します。
    • C++ と同様に、また C とは異なり、型を定義するのに typedef は必要ありません。
    • C++ とは異なり、構造体間に継承はありません。
  • ここで、構造体にはさまざまな型があることを説明しましょう。
    • サイズがゼロの構造体(例: struct Foo;)は、ある型にトレイトを実装しているものの、値自体に格納するデータがない場合に使用できます。
    • 次のスライドでは、フィールド名が重要でない場合に使用されるタプル構造体を紹介します。
  • 適切な名前の変数がすでにある場合は、省略形を使用して構造体を作成できます。
  • 構文 ..avery を使用すると、明示的にすべてのフィールドを入力しなくても、古い構造体のフィールドの大部分をコピーできます。この構文は、常に最後の要素にする必要があります。