7.2.1 Nesting and labels

중첩 loop문을 다룰 때 외부 루프를 break 혹은 continue하는 것이 가능하다. 이 경우, loop는 반드시 'label와 같이 주해가 달려야 하고, break/continue 문에 이름표가 인자로 전달되야 한다.

#![allow(unreachable_code)]

fn main() {
    'outer: loop {
        println!("Entered the outer loop");

        'inner: loop {
            println!("Entered the inner loop");

            // 아래 주석을 제거하면 내부 루프를 종결한다.
            //break;

            // 이 break는 외부 루프를 종결한다.
            break 'outer;
        }

        println!("This point will never be reached");
    }

    println!("Exited the outer loop");
}

results matching ""

    No results matching ""