【发布时间】:2016-12-15 15:53:03
【问题描述】:
我有一个std::exception_ptr 类型的对象,我想在其上调用what(),但似乎没有办法做到这一点(如本答案所述:How do I make a call to what() on std::exception_ptr)。
在互联网上搜索后,我似乎无能为力,只能将它重新扔到std::exception& 中,以便能够做到这一点。
这对我来说有点奇怪,但我想检查一下:std::exception_ptr 可以做什么,然后重新抛出它以获得期望的细节?
C++14或其他版本的C++有什么变化
【问题讨论】:
-
据我所知,它仅在您想推迟异常处理直到您执行其他操作时才有用。
-
你怎么知道
exception_ptr当前持有的异常实际上继承自std::exception? -
@Barry 你没有,除了重新抛出异常并试图将其捕获为
std::exception& -
@lcs 我知道 - 问题是针对 OP。
标签: c++ c++11 exception exception-handling