std::meta::exception - cppreference.com
来自cppreference.com
class exception : public std::exception |
(C++26 起) | |
定义一种对象类型,供反射函数在失败时抛出。
std::meta::exception 类型的对象只能在常量求值中创建和访问。
成员函数
构造一个 meta::exception 对象 (公开成员函数) | |
| 返回解释性字符串 (公开成员函数) | |
| 以 std::u8string_view 的形式返回解释性字符串 (公开成员函数) | |
| 返回关联的 std::meta::info 对象 (公开成员函数) | |
| 返回关联的 std::source_location (公开成员函数) |
std::meta::exception::exception
consteval exception( std::u8string_view u8what_arg, std::meta::info from, std::source_location where = std::source_location::current() ) noexcept; |
(1) | |
consteval exception( std::string_view what_arg, std::meta::info from, std::source_location where = std::source_location::current() ) noexcept; |
(2) | |
consteval exception( const exception& ) = default; |
(3) | |
consteval exception( exception&& ) = default; |
(4) | |
构造一个新的 std::meta::info 对象。用相应的形参初始化存储的值。
1) 如果 u8what_arg 能用普通字面量编码表示,那么 what() 返回的解释性字符串是将 u8what_arg 从 UTF-8 转码到普通字面量编码的结果;否则,对 what() 的调用不是常量表达式。
2) what_arg 必须能用 UTF-8 表示。
3) 复制构造函数为预置的。
4) 移动构造函数为预置的。
std::meta::exception::what
constexpr const char* what() const noexcept override; |
||
返回构造时传入的解释性字符串,可能已从 UTF-8 转码到普通字面量编码。
std::meta::exception::u8what
consteval std::u8string_view u8what() const noexcept; |
||
返回构造时传入的解释性字符串,可能已从普通字面量编码转码到 UTF-8。
std::meta::exception::from
consteval std::meta::info from() const noexcept; |
||
返回构造时传入的 std::meta::info 值。
std::meta::exception::where
consteval std::source_location where() const noexcept; |
||
返回构造时传入的 std::source_location 值。