有没有办法退出单个循环,并退出所有循环?

时间:2015-02-19 16:39:02

标签: ada

我有2个循环,一个内循环和外循环。在一种情况下,我想退出内循环以转到外循环,而在另一种情况下我想从内循环退出到正常程序(换句话说,从内循环我要退出它和外循环并继续执行man程序)

有谁知道我可以这两种方式吗?

1 个答案:

答案 0 :(得分:4)

是的,这可以归功于命名循环。例如:

Outer_Loop:
  loop
    -- first inner loop
    loop
      …

      -- exit the inner loop when a condition is met
      exit when Check_Condition();

      …
      end loop;

    -- second inner loop
    loop
      …

      -- exit the *outer* loop, in this example unconditionally
      exit Outer_Loop;

      -- or you can combine it with a condition
      exit Outer_Loop when Another_Condition_Met();

      …
      end loop;
    end loop Outer_Loop;

  -- execution will continue here after 'exit Outer_Loop;'
  …

参考(对于该语言的'95版本)可以找到here