首页 > 开发 > C++ > 正文

C++中的catch(...)中如何重新抛出异常

2017-09-11 21:35:57  来源: 网友分享

一般的写法
try
{
}
catch(exeption& e)
{
//进行某些处理
throw e;
}
这样可以在遇到异常后进行一些特殊操作后再抛出异常给上一级处理
可是如果是用catch(...)的方式,也就是我不确定可能会有什么异常,但任何异常都应该先处理一下再重新抛出异常。
但这里是...,没有参数可以往上一级抛了
怎么能抛出...所指示的错误?

解决方案

正常情况下是可以重新抛出异常的,不过在实现的过程中要特别小心。
你可以参考再探C++中异常的rethrow