【问题标题】:How to get the exception information in 'catch(...)' [duplicate]如何在'catch(...)'中获取异常信息[重复]
【发布时间】:2014-09-18 07:50:43
【问题描述】:

在C++中,我们可以通过catch(bad_cast& ex)获取异常信息,然后输出ex.what()的内容

try{
     //…
}catch(std::bad_alloc& e)
{
    cout << “Catch bad alloc exception ” << e.what() << endl;
}
catch(std::bad_cast& e)
{
    cout << “Catch bad alloc exception ” << e.what() << endl;
}
catch(std::bad_exception& e)
{
    cout << “Catch bad alloc exception ” << e.what() << endl;
}
// catch more exception types here
// … 
catch(...)
{
    // how to get the content of unknown exception?
}

如何从catch(...)获取异常信息?

【问题讨论】:

  • 简而言之:你不能可靠。

标签: c++ exception


【解决方案1】:

这不是语言本身可以做到的。

... 字面意思是“任何东西”。

您可以安全地对“任何事情”执行哪些操作? 在任何情况下,您都需要一个类型来检查。这更能说明你已经做过的事情。

【讨论】:

    猜你喜欢
    • 2023-03-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-03
    • 1970-01-01
    • 2013-07-25
    • 1970-01-01
    • 2016-04-21
    相关资源
    最近更新 更多