Rust 嵌套循环和标签
在处理嵌套循环的时候可以 break 或 continue 外层循环。在这类情形中,循环必须 用一些 'label(标签)来注明,并且标签必须传递给 break/continue 语句。
#![allow(unreachable_code)] fn main() { 'outer: loop { println!("Entered the outer loop"); 'inner: loop { println!("Entered the inner loop"); // 这只是中断内部的循环 //break; // 这会中断外层循环 break 'outer; } println!("This point will never be reached"); } println!("Exited the outer loop"); }
loop 有个用途是尝试一个操作直到成功为止。若操作返回一个值,则可能需要将其传递给代码的其余部分:将该值放在 break 之后,它就会被 loop 表达式返回。fn main() { let mut c ...