VC++中try catch 与try __excep()的关系

try...catch是编译器对__try ... __except的一个包装; 该包装仅处理C++异常类型, 但是提供了比较方便的方法来传递抛出的异常信息, 这样程序员能够比较方便的处理异常, 而不用想上面的例子那样要手工去异常信息中去取. 

说明:__excep()中的参数是一个表达式值可以是:


  1. EXCEPTION_CONTINUE_EXECUTION (–1)  异常被忽略,控制流将在异常出现的点之后,继续恢复运行。
  2. EXCEPTION_CONTINUE_SEARCH (0)  异常不被识别,也即当前的这个__except模块不是这个异常错误所对应的正确的异常处理模块。系统将继续到上一层的try-except域中继续查找一个恰当的__except模块。
  3. EXCEPTION_EXECUTE_HANDLER (1)  异常已经被识别,也即当前的这个异常错误,系统已经找到了并能够确认,这个__except模块就是正确的异常处理模块。控制流将进入到__except模块中。


你可能感兴趣的:(VC++中try catch 与try __excep()的关系)