为终止处理程序的限制

不能使用 goto 语句阅读本文档 __try 语句块或 __finally 语句块。 相反,您必须输入语句通过正常控制流块。 ,但是, (可以跳出 __try 语句块。)此外,您不能嵌套异常处理程序中或 __finally 内的终止处理程序块。

此外,在终止处理程序允许代码会导致有问题的结果,因此,您应谨慎使用它们,因此,如果基本。 一个是跳出 __finally 语句块的 goto 语句。 作为正常终止的一部分,如果阻止执行,异常的则不会执行任何操作。 ,但是,如果系统展开堆栈,该展开停止和当前函数在控件,就象异常终止。

在 __finally 语句内的某个 return 语句大致块存在同一种情况。 控件回发到包含终止处理程序的函数的直接调用方。 如果系统展开堆栈,此过程停止,并且,程序执行,则引发的异常。

请参见

参考

编写终止处理程序

结构化异常处理(C++)