随笔 - 809  文章 - 0 评论 - 144 阅读 - 770万

Break

退出当前循环体,包括for ,while, repeat等循环体;

Continue

用于从For语句,while语句或repeat语句强行结束本次循环,并开始下一次循环;

Exit

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

若该代码为主程序,则终止该程序,若是函数或过程,则立即退出过程或函数;

正常退出,如果在 try 块中, finally 的程序会执行;

举例:

procedure TForm2.btn1Click(Sender: TObject);
begin
  try
    try
      Exit;

    except
      OutputDebugString('except'); //这里不会,因为没有发生异常,是正常退出
    end;
  finally
    OutputDebugString('finaly');  //这里会输出
  end;
end;

Abort

激发异常退出,安静处理,就是不弹框提示报错,是一个不出现对话框的异常;如果在 try 块中,except 和 finally 的程序会执行,举例:

procedure TForm2.btn1Click(Sender: TObject);
begin
  try
    try
      Abort;

    except
      OutputDebugString('except'); // 这里会输出
    end;
  finally
    OutputDebugString('finaly');  //这里会输出
  end;
end;

image

Abort 是从 EAbort 过来的,可以激发 exception,其实质就是 Abort = RaiseException(),是一个不出现对话框的异常。所以 Abort 的行为和异常是一样的,其代码执行顺序也是follow异常的流程。

image

image

Exit 与 Abort 区别

举例1:

try
  (1) //执行了
  abort;
  (2) //不执行
except
  (3) //执行了
end;
try
  (1) //执行了
  exit;
  (2) //不执行
except
  (3) //不执行了
end;

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

示例2:

procedure p1;
begin
  p2;
  p3;
end;
procedure p2;
begin
  abort; //exit;
end;
procedure p3;
begin
  //showmessage()..
end;

如果用 Abort,则执行不到 P3,如果用 Exit 就能够执行到 P3;

Halt

非正常结束程序,可有 Integer 参数给操作系统,windows 程序一般使用:Application.Terminate,用于强行终止应用程序的执行,返回操作系统(非正常退出方式)。

RunError

生成一个运行时错误,并退出程序。参数是 Byte 型,默认0,终止程序的执行,并产生运行错误(返回错误代码);

Sleep

暂定线程多少毫秒;

posted on   del88  阅读(25)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
历史上的今天:
2020-03-17 域名解析迟迟不生效,刷新本地DNS的方法
2012-03-17 RadioGroup 超方便的自动排版--偶然发现
2012-03-17 如何让RadioGroup有一个是它的默认选中第几个?
点击右上角即可分享
微信分享提示