- C++的try-catch不拦截硬件异常(例如除数为0的异常)只拦截软件异常
- C++的异常可以按调用层次逐层返回,直到遇到可以拦截它的异常处理代码
- C++的catch(...)可以拦截全部的软件异常
- C++发生异常并被拦截时,并不能自动释放从堆上申请的内存 (这样的话或许每个代码层次都需要try-catch)
- C++的catch块并不能看到try块里定义的变量,如果catch块要访问这些变量,要把变量定义在try-catch同一层
- C语言的__try - __catch可以拦截到 硬件异常
C#的异常处理似乎可以拦截硬件异常(至少除数为0的异常可以被拦截)
C#的异常也是逐层返回,直到遇到可以拦截他的异常处理代码