if는 값을 만들 수 있지만 모든 갈래 타입이 같아야 한다
Rust의 if는 표현식으로 변수에 대입할 수 있으며, 컴파일러는 각 분기 결과 타입을 하나로 맞춘다.
분기 선택
세미콜론 없음
누락 시 ()
최종 값 저장
| 구분 | 의미 | 판단 |
|---|---|---|
| 타입 일치 | i32 / i32 | 대입 가능 |
| 타입 불일치 | i32 / &str | 컴파일 오류 |
| else 없음 | 결과는 () | 값 대입 의도와 불일치 |
핵심 if 표현식은 제어 흐름이면서 동시에 하나의 값을 만들어야 한다는 점이다.
Rust의 if는 표현식으로 변수에 대입할 수 있으며, 컴파일러는 각 분기 결과 타입을 하나로 맞춘다.
분기 선택
세미콜론 없음
누락 시 ()
최종 값 저장
| 구분 | 의미 | 판단 |
|---|---|---|
| 타입 일치 | i32 / i32 | 대입 가능 |
| 타입 불일치 | i32 / &str | 컴파일 오류 |
| else 없음 | 결과는 () | 값 대입 의도와 불일치 |
핵심 if 표현식은 제어 흐름이면서 동시에 하나의 값을 만들어야 한다는 점이다.