天天看點

Delphi中exit、break、continue等跳出循環操作的差別

Delphi中表示跳出的有break,continue,abort,exit,halt,runerror等

1.break

  強制退出最近的一層循環(注意:隻能放在循環裡;而且是隻能跳出最近的一層循環),用于從for、while、repeat語句中強制退出

  類似于C/C++等語言中的break的功能

2.continue

  用于從for、while、repeat語句中結束循環内的本次處理,繼續從循環體的開始位置繼續執行

  類似于C/C++等語言中的continue的功能

3.exit

  用于從目前代碼塊中退出。

  若該代碼是主程式,則終止該程式。

  如果是函數或過程,則立即終止該函數或過程

4.abort

  終止程式需的運作,産生不報錯的異常資訊。跳出祖先子產品。和exit的差別是

procedure p1;
begin
    p2;
    p3;
end;
 
procedure p2;
begin
    abort;    //或者exit;
end;
 
procedure p3;
begin
    //進行一些操作
end;
           

在執行p1的時候,如果p2裡面用abort,則執行不到p3

  如果使用exit,就能夠執行到p3,因為exit隻能控制終止它所在的函數或過程,不能終止調用它所在函數的那個代碼塊。如果用exit終止它所在的那個函數之後,會跳回調用這個函數的代碼塊,繼續執行之後的代碼

5.halt

  用于強行終止應用程式的執行,傳回作業系統(非正常退出方式)

6.runerror

  終止程式的執行,并産生運作錯誤(傳回錯誤代碼);

繼續閱讀