표현식
(대부분의) 러스트 프로그램은 선언문들로 이루어져 있습니다.
fn main() { // statement // statement // statement }
러스트엔 몇몇 종류의 선언문이 있습니다.
가장 흔한 것은 변수 선언과 표현식 끝에 ;
를 두는 것이죠:
fn main() { // variable binding let x = 5; // expression; x; x + 1; 15; }
블록 또한 표현식이어서, 값이나 대입에 사용될 수 있습니다. 블록의 가장 마지막 표현식의
결과가 내부 변수와 같은 대응식에 전달됩니다. 하지만 마지막 표현식이 ;
로 끝난다면,
()
가 리턴됩니다.
fn main() { let x = 5u32; let y = { let x_squared = x * x; let x_cube = x_squared * x; // This expression will be assigned to `y` x_cube + x_squared + x }; let z = { // The semicolon suppresses this expression and `()` is assigned to `z` 2 * x; }; println!("x is {:?}", x); println!("y is {:?}", y); println!("z is {:?}", z); }