std::bad_any_cast
来自 cppreference.com
在头文件 <any> 中定义 |
||
class bad_any_cast : public std::bad_cast; |
(自 C++17 起) | |
定义了一种类型的对象,以便在失败时由 std::any_cast 的返回值形式抛出。
内容 |
[编辑] 成员函数
(构造函数) |
构造一个新的 bad_any_cast 对象(公有成员函数) |
operator= |
替换 bad_any_cast 对象(公有成员函数) |
what |
返回说明性字符串 (公有成员函数) |
std::bad_any_cast::bad_any_cast
bad_any_cast() noexcept; |
(1) | (自 C++17 起) |
bad_any_cast( const bad_any_cast& other ) noexcept; |
(2) | (自 C++17 起) |
使用一个实现定义的以空字符结尾的字节字符串构造一个新的 bad_any_cast
对象,该字符串可以通过 what() 访问。
1) 默认构造函数。
参数
other | - | 要复制的另一个异常对象 |
std::bad_any_cast::operator=
bad_any_cast& operator=( const bad_any_cast& other ) noexcept; |
(自 C++17 起) | |
将内容赋值为 other 的内容。如果 *this 和 other 都有动态类型 std::bad_any_cast
,那么在赋值后 std::strcmp(what(), other.what()) == 0.
参数
other | - | 要赋值的另一个异常对象 |
返回值
*this
std::bad_any_cast::what
virtual const char* what() const noexcept; |
(自 C++17 起) | |
返回说明性字符串。
参数
(无)
返回值
指向以空字符结尾的字符串的指针,其中包含说明性信息。该字符串适合转换为 std::wstring 并显示为 std::wstring。该指针至少保证在从中获取异常对象的异常对象被销毁之前,或者在对异常对象进行非 const 成员函数(例如复制赋值运算符)调用之前有效。
备注
允许实现重写 what()
,但不是必需的。
从 std::bad_cast 继承
从 std::exception 继承
成员函数
[虚拟] |
销毁异常对象 ( std::exception 的虚拟公有成员函数) |
[虚拟] |
返回说明性字符串 ( std::exception 的虚拟公有成员函数) |