표현식
Rust 프로그램은 (대부분) 일련의 문장(statements)으로 구성됩니다:
fn main() {
// 문장
// 문장
// 문장
}
Rust에는 몇 가지 종류의 문장이 있습니다. 가장 흔한 두 가지는 변수 바인딩을 선언하는 것과 표현식에 ;를 사용하는 것입니다:
fn main() {
// 변수 바인딩
let x = 5;
// 표현식;
x;
x + 1;
15;
}
블록도 표현식이므로 할당 시 값으로 사용될 수 있습니다. 블록의 마지막 표현식은 로컬 변수와 같은 장소 표현식(place expression)에 할당됩니다. 하지만 블록의 마지막 표현식이 세미콜론으로 끝나면 반환 값은 ()가 됩니다.
fn main() {
let x = 5u32;
let y = {
let x_squared = x * x;
let x_cube = x_squared * x;
// 이 표현식은 `y`에 할당됩니다
x_cube + x_squared + x
};
let z = {
// 세미콜론이 이 표현식을 억제하여 `z`에는 `()`가 할당됩니다
2 * x;
};
println!("x는 {:?}입니다", x);
println!("y는 {:?}입니다", y);
println!("z는 {:?}입니다", z);
}