ブロックとスコープ
コードブロック
A block in Rust contains a sequence of expressions, enclosed by braces {}
. Each block has a value and a type, which are those of the last expression of the block:
fn main() { let z = 13; let x = { let y = 10; println!("y: {y}"); z - y }; println!("x: {x}"); }
最後の式が ;
で終了した場合、ブロック全体の値と型は ()
になります。
This slide and its sub-slides should take about 5 minutes.
- ブロック内にある最後の行を変更することによって、ブロック全体の値が変わることが分かります。例えば、行末のセミコロンを追加/削除したり、
return
を使用したりすることで、ブロックの値は変化します。