std::meta::exception
Определён в заголовочном файле <meta> | ||
|---|---|---|
class exception : public std::exception | (начиная с C++26) |
Определяет тип объекта, который выбрасывается при сбое функциями отражения.
Объекты типа std::meta::exception можно создавать и использовать только при вычислении константных выражений.
Функции-члены
|
(constructor) | создаёт объект meta::exception (открытая функция-член) |
|
what | возвращает поясняющую строку (открытая функция-член) |
|
u8what | возвращает поясняющую строку в виде std::u8string_view (открытая функция-член) |
|
from | возвращает связанный объект std::meta::info (открытая функция-член) |
|
where | возвращает связанный 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. Инициализирует сохранённые значения соответствующими параметрами.
u8what_arg может быть представлено в обычной кодировке литералов, поясняющая строка, возвращаемая what(), u8what_arg преобразуется из UTF-8 в обычную кодировку литералов; в противном случае вызов what() не является константным выражением.what_arg должно быть представимо в UTF-8.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, переданное при создании объекта.
Пример
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/meta/exception