Delphi异常处理机制

转自: http://blog.sina.com.cn/s/blog_5d9ee55e010103kr.html

 

Delphi的异常处理方式有两种:try...except...end;try...finally...end;。try...except主要用于捕获异常,只有出现异常的时候才会执行except部分。try...finally主要用于资源释放,无论try语句块是否有异常都会执行finally语句块。

    如下面的代码:

 
try
    raise  exception.create( '发现异常');   //在try语句块中抛出一个异常
except
    on  e:Exception  do       //捕获异常
    begin
       showMessage(e.message);    
    end;
end;

    用try..except是不会出现异常提示信息的对话框,需要自己主动去show出异常信息。而try..finally.则会出现异常提示信息。try..except和try..finally可以相互嵌套

 

   使用on e:Exception do可以精确处理特定的异常。Exception是所有异常类的基类,Delphi内部就定义了处理常见异常的异常类(在SysUtils单元中),也可以从Exception继承定义自己的异常类

   使用raise语句可以抛出一个异常:

01 EMyException= class(Exception)
02  end;
03  try
04     try
05        raise  EMyException.Create( '我自己的异常');
06     except
07       on  e:EMyException  do
08          showMessage(e.message);
09     end
10  finally
11     showMessage( '我始终被执行');
12  end

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值