结构化异常处理
英文是SEH。但这个词条似乎被占用了。所以我只能用这个词条了。
SEH是WINDOWS系统中处理计算机异常行为的一种方式,这种方式的特点就是用入栈的方式把断点保存起来,所以他的效率很高,往往能够处理很多的异常状态。
Microsoft c/c++编译程序的一种功能扩充,它的最大好处就是它对C和C++都适用;但是它不是一种ANSI标准,因此,与使用ANSI异常处理的程序相比,使用结构化异常处理的程序的可移植性要差一些
C/C++语言中,软件工作人员往往用一句try语句对之后的语句进行保护起来,达到使程序稳定运行的目的。
而在现代软件的编制过程中,错误处理占到很大的一个比重,所以SEH的应用是亟为重要的。
Visual Basic 中,可以使用该处理创建和维护具有可靠、全面的错误处理程序的程序。结构化异常处理是旨在通过将控制结构(类似于 Select Case 或 While)与异常、受保护的代码块和筛选器结合起来,在执行期间检测和响应错误的代码。
使用 Try...Catch...Finally 语句,可以保护可能引发错误的代码块。可以嵌套异常处理程序,并且在每个块内声明的变量将具有局部范围。以下代码显示了 Try...Catch...Finally 语句的结构。
以下为伪代码:
Try
' Starts a structured exception handler.
' Place executable statements that may generate
' an exception in this block.
Catch [optional filters]
' This code runs if the statements listed in
' the Try block fail and the filter on the Catch statement is true.
[Additional Catch blocks]
Finally
' This code always runs immediately before
' the Try statement exits.
End Try
' Ends a structured exception handler.