C++异常处理问题 10
假设一个程序抛出一个异常,而一个特定的异常处理程序将开始执行。现在假设一个异常处理程序本身又抛出一个相同的异常,这会造成无限循环吗?编写一个程序来证明一下。在此请教一楼:...
假设一个程序抛出一个异常,而一个特定的异常处理程序将开始执行。现在假设一个异常处理程序本身又抛出一个相同的异常,这会造成无限循环吗?编写一个程序来证明一下。
在此请教一楼:运行的时候报出一个窗口:abnormal program termination.
怎么解释呢?
再次请教一楼:能给个完整些的例子吗?小弟不才。 展开
在此请教一楼:运行的时候报出一个窗口:abnormal program termination.
怎么解释呢?
再次请教一楼:能给个完整些的例子吗?小弟不才。 展开
1个回答
展开全部
当然不会了
#include <iostream>
using namespace std ;
int main(void)
{
try
{
throw "Exception raised!" ;
}
catch(...)
{
throw "Exception raised!" ;//这个异常会一直向外寻找一个最近的catch块,找到则处理,找不到就忽略了。
}
system("pause") ;
}
因为第二个catch没有处理异常,而是直接抛出,而外层函数也没有处理这个异常,那程序肯定是崩溃掉的。
这个已经够完整啦
#include <iostream>
using namespace std ;
int main(void)
{
try
{
throw "Exception raised!" ;
}
catch(...)
{
throw "Exception raised!" ;//这个异常会一直向外寻找一个最近的catch块,找到则处理,找不到就忽略了。
}
system("pause") ;
}
因为第二个catch没有处理异常,而是直接抛出,而外层函数也没有处理这个异常,那程序肯定是崩溃掉的。
这个已经够完整啦
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询