중첩과 레이블
중첩 루프를 다룰 때 외부 루프를 break하거나 continue하는 것이 가능합니다. 이 경우 루프에는 어떤 'label을 붙여야 하며, 해당 레이블은 break/continue 문에 전달되어야 합니다.
#![allow(unreachable_code, unused_labels)]
fn main() {
'outer: loop {
println!("외부 루프에 진입했습니다");
'inner: loop {
println!("내부 루프에 진입했습니다");
// 이것은 내부 루프만 종료시킵니다
//break;
// 이것은 외부 루프를 종료시킵니다
break 'outer;
}
println!("이 지점에는 결코 도달하지 않습니다");
}
println!("외부 루프에서 나갔습니다");
}