我有一个如下所示的 try-catch 块
try
{
// Do something here.
}
catch (const std::exception &e)
{
// std exception.
}
catch(...)
{
// Unknown exception. We can't know the type.
}
Run Code Online (Sandbox Code Playgroud)
我正在阅读http://www.cplusplus.com/reference/exception/exception/中的一些文档,但对我来说,当代码进入 std::exception 部分时,如何知道捕获到什么异常类型并不明显。
有没有办法获取包含错误类型的字符串?(我不想显示错误消息,只想显示异常类型)
有没有办法获取包含错误类型的字符串?
有点。如果您通过引用捕获(正如您在上面的代码中所做的那样),那么您可以应用typeid异常来获取有关其动态类型的一些信息。这是由于std::exception多态类型而成为可能的。但是,不能保证这std::type_info::name()是该类型的可读名称。
| 归档时间: |
|
| 查看次数: |
746 次 |
| 最近记录: |