Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

panic

우리가 살펴볼 가장 단순한 에러 핸들링 메커니즘은 panic입니다. 이것은 에러 메시지를 출력하고, 스택을 되감기(unwind) 시작하며, 보통 프로그램을 종료합니다. 여기서는 에러 조건에 대해 명시적으로 panic을 호출합니다:

fn drink(beverage: &str) {
    // 설탕이 든 음료를 너무 많이 마시면 안 됩니다.
    if beverage == "레모네이드" { panic!("으아아아아!!!!"); }

    println!("상쾌한 {}만 있으면 돼요.", beverage);
}

fn main() {
    drink("물");
    drink("레모네이드");
    drink("생수");
}

첫 번째 drink 호출은 작동합니다. 두 번째는 패닉을 일으키며, 따라서 세 번째는 결코 호출되지 않습니다.