delphi中表示跳出的有break,continue, exit,abort, halt, runerror
1、break 强制退出循环(只能放在循环中),用于从For语句,while语句或repeat语句中强制退出。
2、continue
用于从For语句,while语句或repeat语句强行结束本次称称循环,并开始下一次循环。
3、exit
用于从当前代码块中退出。若该代码为主程序,则终止该程序,若是函数或过程,则立即该过程或函数。
4、abort
中止程序的运行,产生不报错的异常信息。跳出祖先模块。和exit的区别是
procedure p1;
begin
p2;
p3;
end;
procedure p2;
begin
abort;
//exit;
end;
procedure p3;
begin
//showmessage()..
end;
如果用 Abort,则执行不到 P3,如果用 Exit 就能够执行到 P3。
5、halt 用于强行终止应用程序的执行,返回操作系统(非正常退出方式)。
6、runerror 终止程序的执行,并产生运行错误(返回错误代码)。
=======================================
break 跳出循环
continue 继续下一个循环
abort 抛出空异常
Exit 退出当前过程。
尽量少用控制语制,因为配合异常捕捉及后续修改时,容易犯逻辑错误。
========================================
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。
=====================================
delphi中表示跳出的有break,continue, exit,abort, halt, runerror的更多相关文章
- delphi中break,continue, exit,abort, halt, runerror的异同
delphi中表示跳出的有break,continue, exit,abort, halt, runerror. 1.break 强制退出循环(只能放在循环中),用于从For语句,while语句或re ...
- 教程-Delphi各种退出break,continue, exit,abort, halt, runerror
delphi中表示跳出的有break,continue, exit,abort, halt, runerror.1.break 强制退出循环(只能放在循环中),用于从For语句,while语句或rep ...
- [转帖]Shell脚本中的break continue exit return
Shell脚本中的break continue exit return 转自:http://www.cnblogs.com/guosj/p/4571239.html break结束并退出循环 cont ...
- break , continue , exit
break , continue , exit 例一:#!/bin/bash . /etc/init.d/functions `;do ];then #continue #没有数字3 break #e ...
- break continue exit return 的区别
[root@localhost day1]# cat ss.sh #!/bin/bash for ((i=0;i<5;i++)) do if [ $i -eq 3 ] then break #c ...
- Shell脚本中的break continue exit return
转自:http://www.cnblogs.com/guosj/p/4571239.html break结束并退出循环 continue在循环中不执行continue下面的代码,转而进入下一轮循环 e ...
- python中break continue exit() pass区别
1.break break是终止本次循环,比如你很多个while循环,你在其中一个while循环里写了一个break,满足条件,只会终止这个while里面的循环,程序会跳到上一层while循环继续往下 ...
- 微信公众号 待发货-物流中-已收货 foreach break continue
w <?php $warr = array(1,2,3); $w_break = 0; foreach($warr AS $w){ if($w==2)break; $w_break += $w; ...
- C语言break/continue/exit/return的功能区别
break是跳出整个循环而执行循环体之外的下一条语句: continue只是跳出本次循环继续判断下一次循环条件是否满足. exit() 结束当前进程/当前程式/,在整个程式中,只要调用 exit ,就 ...
随机推荐
- 迁移到 Express 4.x
原文地址: http://expressjs.com/migrating-4.html 概览 从 Express 3 到Express 4 是一个巨大的变化,这意味着现存的 Express 3 应用在 ...
- Flash Builder 4.6 BUG 远程访问受阻
今天调试项目的时候,惊讶的发现在使用RemoteObject进行远程访问时出现奇怪现象,只能在服务器本地实现访问,在其他客户机上提示2048错误,send failed,差点没把我吓死,记得之前测试过 ...
- 利用Meida Service的Java SDK来调用Azure Media Services的Index V2实现视频字幕自动识别
Azure Media Services新的Index V2 支持自动将视频文件中的语音自动识别成字幕文件WebVtt,非常方便的就可以跟Azure Media Player集成,将一个原来没字幕的视 ...
- hive添加分区
添加分区 alter table 表名 add partition (dt='2016-09-12'); select * from 表名 where dt = '2016-09-12' limit ...
- [Oracle] 中的Temporary tablespace的作用
临时表空间主要用途是在数据库进行排序运算[如创建索引.order by及group by.distinct.union/intersect/minus/.sort-merge及join.analyze ...
- 洛谷P2737 [USACO4.1]麦香牛块Beef McNuggets
P2737 [USACO4.1]麦香牛块Beef McNuggets 13通过 21提交 题目提供者该用户不存在 标签USACO 难度普及+/提高 提交 讨论 题解 最新讨论 暂时没有讨论 题目描 ...
- TCP/IP详解学习笔记(10)-- DNS:域名系统
1.DNS DNS 是计算机域名系统(Domain Name System 或Domain Name Service) 的缩写,它是由解析器以及域名服务器组成的.域名服务器是指保存有该网络中 ...
- Java中自定泛型方法
泛型用到哪些集合:List Set Map List<String> list=new ArraList<String>(); list.add("美女") ...
- JS HasMap使用
function HashMap() { var size = 0; var entry = new Object(); this.put = function (key, value) { entr ...
- 详解Ossim 4.3控制台
在Ossim 4.2以后的发行版中增加了控制台功能下面加以详细说明,当Ossim 启动之后,在控制台以root身份登录系统后会执行ossim-setup脚本,然后显示如下图1所示,了解这些功能,以及操 ...