【发布时间】:2011-01-12 02:11:24
【问题描述】:
另一个问题中的某个人建议使用 catch(...) 来捕获所有其他未处理的 - 意外/不可预见的异常,方法是用 try{}catch(...){} 块包围整个 main()。
这听起来是一个有趣的想法,可以节省大量调试程序的时间,并至少留下一点线索。
问题的本质是可以通过这种方式恢复哪些信息(除了我留下的任何调试全局变量),以及如何恢复它(如何访问并识别任何 catch 被调用)
此外,还有哪些注意事项与之相关。特别是:
- 它会与稍后发芽的线程一起使用吗?
- 它不会破坏处理段错误(在其他地方作为信号捕获)
- 它不会影响其他不可避免地嵌套在其中的 try...catch 块,这些块用于处理预期的异常吗?
【问题讨论】:
标签: c++ exception-handling debugging try-catch ellipsis