Dev Study
Rust コース

53. 分配束縛 — structとタプルをほどく

let Point { x, y } = p; のように書くと、構造体のフィールドをフィールド名と同じ名前の変数に一度に取り出せます。タプルも let (name, price) = pair; のようにほどけて、パターンの中にパターンを書くネストもできます。

関数がタプルを返すときや、構造体の複数のフィールドをまとめて使いたいときに、p.x、p.y と書き続けるより短く、何を取り出したいのかが明確になります。match の腕だけでなく let や関数の引数でも同じパターンが使えるのが、Rust の一貫した設計です。

フィールド名と違う変数名を付けたいときは、let Point { x: a, y: b } = p; のようにコロンの後ろに変数名を書きます。

▶ サンプルコードを実行してみよう(自由に書き換えてOK)

Rust
サンプルコードで身につける(5本) →

学んだ概念を、素朴な例から実務寄りの例まで5つの具体例で確認します。

公式ドキュメントで詳しく ↗