Delphi中break,exit,abort跳出循环的对照

时间:2021-08-01 05:37:17

Delphi中break,exit,abort跳出循环的比较

exit: 退出函数体
abort: 遇到异常,安静处理,就是不显示不提示
break: 退出当前循环体,包括for ,while, repeat等循环体
continue: 结束循环内的本次处理,继续从循环体的开始位置继续执行

Exit 是跳出当前代码块,也就是当前函数,跳出后是要继续向下执行的(如果有后续代码)。

Abort 是从 EAbort 过来的,可以激发 exception,其实质就是 Abort = RaiseException(),是一个不出现对话框的异常。所以 Abort 的行为和异常是一样的,其代码执行顺序也是follow异常的流程。
例如:
try
(1) //执行了
abort;
(2) //不执行
exception
(3) //执行了
end;

用 Abort 能够执行 exception 里边的代码,但是如果用 Exit,就直接离开,不管 exception。


delphi中表示跳出的有break,exit,abort。
【break】
离开循环 只能放在循环中

【exit】 
跳出本模块(过程和函数),放在循环中是跳出循环在所在的模块。

【abort】
中止程序的运行,,产生不报错的异常信息。跳出祖先模块。和【exit】的区别是
procedure p1;
begin
p2;
p3;
end;
procedure p2;
begin
abort; //exit;
end;
procedure p3;
begin
//showmessage()..
end; 
如果用 Abort,则执行不到 P3,如果用 Exit 就能够执行到 P3。