有沒有辦法導致異常無法在特定的堆棧幀之上傳播,同時又不會丟失堆棧信息?C++禁用堆棧幀下面的異常
IE,
int foo() {
throw 3;
}
int bar() {
// do something here
foo();
}
int main() {
try {
bar();
} catch(...) {
std::cout << "Caught";
}
}
我想這是在「扔3」呼叫終止,而不能由主被抓。
這是可能的嗎?
異常機制將繼續搜索更高範圍的異常處理程序(catch)。我不知道如何在沒有將異常處理程序放在希望停止的地方的情況下停止該方法。 – NathanOliver