Именованные разрывы для циклов в Rust

Есть ли способ поместить в Rust вложенные for циклы и разорвать внешний изнутри внутреннего, как это можно сделать, например: в Java? Я знаю, что Rust поддерживает именованные разрывы в loop, но я не могу найти информацию об этом относительно for.

30
задан 19.05.2020, 06:12

1 ответ

Да. Он использует тот же синтаксис, что и время жизни.

fn main() {
    'outer: for x in 0..5 {
        'inner: for y in 0..5 {
            println!("{},{}", x, y);
            if y == 3 {
                break 'outer;
            }
        }
    }
}

См. документацию по меткам петли и соответствующий раздел , ссылка .

55
ответ дан 19.05.2020, 06:13
  • 1
    HaroldL: Вы могли уточнить то, как использовать ту функцию? I' m пользователь Eclipse и это - первый I' ve когда-либо услышали о нем, таким образом, I' ll определенно искать его. – Thomas Owens 08.01.2020, 13:25
  • 2
    @NoeticJun It' s упомянутый в разделе Бесконечные циклы (сопровождаемый Выражениями break). Хотя it' s немного сбивающий с толку, потому что повреждение в качестве примера break foo вместо break 'foo. Это также использует обоих " label" и " lifetime" относиться к тому же самому. Это должно быть переписано. – Lily Ballard 19.05.2020, 06:13

Теги

Похожие вопросы