谁会try呀

Vevel 2003-08-22 11:15:35
谁会TRY语句呀。跟我详细地讲解一下可以吗?谢谢了。
...全文
54 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
大地精灵 2003-08-22
  • 打赏
  • 举报
回复
都说了,结合试用
try
try
..............
finally
..............
end
excpet
.................
end

能保证发生异常以后肯定执行Finally,然后处理Except
cow8063 2003-08-22
  • 打赏
  • 举报
回复
try
。。。。。。。。。。。。。。。。。。。。
except
出错处理
end
try
...........................................
finally
不管错也不错,都做的事
end
lean77 2003-08-22
  • 打赏
  • 举报
回复
关注..
hp0773 2003-08-22
  • 打赏
  • 举报
回复
Delphi提供了一个保留字finally,用于实现资源的保护: 

  {分配资源}

  try

{资源使用情况}

finally

{释放资源}

  end; 

try…finally…end就形成了一个资源保护块。finally后面的语句是在任何情况下,不论程序是否发生异常,都会执行的。

try …except …end形成了一个异常响应保护块。与finally不同的是:正常情况下except 后面的语句并不被执行,而当异常发生时程序自动跳到except,进入异常响应处理模块。当异常被响应后异常类自动清除。
duxin 2003-08-22
  • 打赏
  • 举报
回复
:)
IORILI 2003-08-22
  • 打赏
  • 举报
回复
同意Danphel(Aleon) ( )
linuxyf 2003-08-22
  • 打赏
  • 举报
回复
看帮助文件,详细地很
Danphel 2003-08-22
  • 打赏
  • 举报
回复
意外处理在错误修正以及资源保护中都应该大量使用.
也就是说, 任何分配资源的情况, 都应该使用 try..finally 以确保资源被正确释放.
在单元的 initialization/finalization 中或在对象的 constructor/destructor 中分配/释放资源的情况不在此列.




try..finally 的使用


任何可能的地方, 所有的资源分配代码都必须以 try..finally 结构保护起来.
例如, 下面的代码可能导致的 bug:


SomeClass1 :=
TSomeClass.Create
SomeClass2 := TSomeClass.Create;
try
  { do some code }
finally
  SomeClass1.Free;
  SomeClass2.Free;
end;




更安全的做法应该是:


SomeClass1 := TSomeClass.Create
try
  SomeClass2 := TSomeClass.Create;
  try
    { do some code }
  finally
    SomeClass2.Free;
  end;
finally
  SomeClass1.Free;
end;


try..except 的使用


try..except 应该只在你需要在产生意外时执行任务的情况下使用.
一般来说, 你不需要使用 try..except 来简单地显示错误信息,
因为应用程序将通过 Application 对象自动实现这一点.
在 except 子句中, 如果你希望在执行过自己的任务后再调用缺省的意外处理程序, 应该使用 raise 来再次产生这个意外.



try..except..else 的使用


在 try..except 中使用 else 子句是不好的,
因为它将阻塞所有的意外, 包括那些你没有准备处理的意外.


linuxyf 2003-08-22
  • 打赏
  • 举报
回复
Exceptions are handled within try...except statements. For example,

try
X := Y/Z;
except
on EZeroDivide do HandleZeroDivide;
end;

This statement attempts to divide Y by Z, but calls a routine named HandleZeroDivide if an EZeroDivide exception is raised.

The syntax of a try...except statement is

try statements except exceptionBlock end
初心2 2003-08-22
  • 打赏
  • 举报
回复
try
try
自己希望的处理过程
except
出现错误后的处理
end
finally
释放内存
end
sduzjw 2003-08-22
  • 打赏
  • 举报
回复
刚刚看了DELOPHI 5开发人员指南,上面讲的挺全的,下一个看看吧,
參照頁 http://www.codestudy.net/book/list.asp?id=497

OK
mrtxc 2003-08-22
  • 打赏
  • 举报
回复
楼上说得够多了

5,388

社区成员

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

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