[SOS]:为何异常不能被捕获?

h770 2004-05-08 01:26:15
procedure TForm1.Button2Click(Sender: TObject);
var a:real;
begin
i:=i-1;
try

a:=10/i;
except
on EDivByZero do
exit;
end;
showmessage(floattostr(a));
end;


谢谢大家
...全文
67 9 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
qizhanfeng 2004-05-08
  • 打赏
  • 举报
回复
try

...
except
on E: EDivByZero do
showmessage(E.Message)
end;
huluobowangmeng 2004-05-08
  • 打赏
  • 举报
回复
学习!加帮顶!!
ylyn 2004-05-08
  • 打赏
  • 举报
回复
Tools->DebugOptions->LanguageExceptions
中有个Stop On Delphi Exceptions的勾去掉
楚人无衣 2004-05-08
  • 打赏
  • 举报
回复
Tools->Debug Options...->Language Exceptions勾去Stop on Delphi Exceptions
wanwangzhiwang 2004-05-08
  • 打赏
  • 举报
回复
on EZeroDivide do
exit;
ckp 2004-05-08
  • 打赏
  • 举报
回复
同意juliens(星星球)
juliens 2004-05-08
  • 打赏
  • 举报
回复
上面老兄说的问题是一个方面,另外我觉得on EDivByZero do这一句也没有多大必要,这样的话你还可以捕捉其他异常,比如说内存溢出等!
wanwangzhiwang 2004-05-08
  • 打赏
  • 举报
回复
浮点用EZeroDivide
整型用EDivByZero

自己看帮助去吧
johnzhangbit 2004-05-08
  • 打赏
  • 举报
回复
i的定义在哪里,定义了吗?
还有你确定i一定是0吗?

5,928

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧