【发布时间】:2009-07-21 01:52:13
【问题描述】:
这看起来应该很简单,但我已经尝试过try {} catch (...) {} C++ 异常处理和__try {} __finally {} 结构化异常处理 (SEH)
当您使用 Control-C 应用程序时,任何人都不会捕捉到发生的异常。
我真的没想到 C++ 异常处理会这样做,因为 Control-C 是一个系统类型的信号,而不是由 C++ throw() 引起的,但是当 SEH 不起作用时,我还是尝试了它。
如果我在调试器下运行,它表明 Control-C 引发了第一次机会异常,但是当它被重新抛出时,我的处理程序永远不会被调用。
【问题讨论】:
-
也不例外,这叫中断。
-
@Daniel 是的,从技术上讲,微软应该称之为结构化中断处理,但他们没有。 Po-tAY-to Po-tAH-to.