6 Expressions
Rust 프로그램은 (대부분)문장의 연속으로 이루어져있다:
fn main() {
// 문장
// 문장
// 문장
}
Rust에는 몇 개 안되는 종류의 문장들이 있다. 가장 자주 사용되는 두 가지는 선언하는 변수의 바인딩이과 ';'을 사용하는 표현이다.
fn main() {
// 변수 바인딩
let x = 5;
// 표현;
x;
x + 1;
15;
}
블록들 또한 표현이다, 그래서 그들은 r-values로 대입할 때 사용될 수 있다. 블록에 마지막 표현은 l-value 에 대입할 것이다. 하지만 만약 마지막 문장이 세미콜론으로 끝나면, 반환 값은 ()이 될 것이다.
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 is {:?}", x);
println!("y is {:?}", y);
println!("z is {:?}", z);
}