我正在阅读“C++ 编程语言第 4 版”一书,并且对有关异常处理的一段有疑问:
在某些情况下,必须放弃异常处理以使用不太微妙的错误处理技术。指导原则是:
- 处理异常时不要抛出异常。
- 不要抛出无法捕获的异常。
如果异常处理实现捕捉到你做任何一个,它会终止你的程序。
有人可以给我一个第一种情况的例子吗?我想到的只有这样的东西,但它是根据 g++ 的有效代码:
try
{
throw 1;
}
catch(...)
{
try
{
throw 2;
}
catch(...)
{
cout << "OK";
}
}