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