タプル構造体

フィールド名が重要でない場合は、タプル構造体を使用できます。

XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

これは多くの場合、単一フィールド ラッパー(ニュータイプと呼ばれます)に使用されます。

XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Speaker Notes

This slide should take about 10 minutes.
  • ニュータイプは、プリミティブ型の値に関する追加情報をエンコードする優れた方法です。次に例を示します。
    • 数値はいくつかの単位で測定されます(上記の例では Newtons)。
    • この値は作成時に検証に合格したため、PhoneNumber(String) または OddNumber(u32) を使用するたびに再検証する必要はありません。
  • ニュータイプの 1 つのフィールドにアクセスして、Newtons 型に f64 の値を追加する方法を示します。
    • Rust では通常、不明瞭なこと(自動ラップ解除や、整数としてのブール値の使用など)は好まれません。
    • 演算子のオーバーロードについては、3 日目(ジェネリクス)で説明します。
  • この例は、マーズ クライメイト オービターの失敗を参考にしています。