有没有办法从 finally 子句中检测到异常正在被抛出?
请参见下面的示例:
try {
// code that may or may not throw an exception
} finally {
SomeCleanupFunctionThatThrows();
// if currently executing an exception, exit the program,
// otherwise just let the exception thrown by the function
// above propagate
}
还是忽略其中一个例外是您唯一能做的?
在 C++ 中,它甚至不允许您忽略其中一个异常,而只是调用 terminate()。大多数其他语言使用与 java 相同的规则。