我有一些技术问题。在此功能中:
string report() const {
if(list.begin() == list.end()){
throw "not good";
}
//do something
}
如果我抛出异常,程序将如何处理?我的功能会终止还是会继续运行?如果终止,它将返回什么值?
最佳答案
如果抛出异常,则所有功能都将退出,直到找到具有匹配try...catch
类型的catch
块。如果未从try块中调用您的函数,则该程序将退出,并带有未处理的异常。
查看https://isocpp.org/wiki/faq/exceptions了解更多信息。
关于c++ - 当我抛出异常时会发生什么?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3065284/