std::bad_expected_access
Определено в заголовке <expected> | ||
|---|---|---|
template< class E > class bad_expected_access : public std::bad_expected_access<void> | (1) | (с C++23) |
template<> class bad_expected_access<void> : public std::exception | (2) | (с C++23) |
std::expected::value, при попытке доступа к ожидаемому объекту, содержащему неожиданное значение. bad_expected_access<E> хранит копию неожиданного значения.bad_expected_access<void> является базовым классом всех других специализаций bad_expected_access.Члены первичного шаблона
| (конструктор) | создаёт объект bad_expected_access (публичный член-функция) |
| error | возвращает сохранённое значение (публичный член-функция) |
| what | возвращает строку пояснения (публичный член-функция) |
std::bad_expected_access::bad_expected_access
explicit bad_expected_access( E e ); |
Создаёт новый объект bad_expected_access<E>. Инициализирует сохранённое значение значением std::move(e).
std::bad_expected_access::error
const E& error() const & noexcept; E& error() & noexcept; const E&& error() const && noexcept; E&& error() && noexcept; |
Возвращает ссылку на сохранённое значение.
std::bad_expected_access::what
const char* what() const noexcept override; |
Возвращает строку пояснения.
Параметры
(нет)
Возвращаемое значение
Указатель на строку с нулевым завершением, содержащую поясняющую информацию. Строка подходит для преобразования и отображения как std::wstring. Указатель гарантированно будет действительным по крайней мере до тех пор, пока объект исключения, из которого он получен, не будет уничтожен, или пока не будет вызван неконстантный член-функция (например, оператор копирующего присваивания) на объекте исключения.
Примечания
Реализации разрешено, но не обязательно переопределять what().
Члены специализации bad_expected_access<void>
| (конструктор) | создаёт объект bad_expected_access<void> (защищённый член-функция) |
| (деструктор) | уничтожает объект bad_expected_access<void> (защищённый член-функция) |
| operator= | заменяет объект bad_expected_access<void> (защищённый член-функция) |
| what | возвращает строку пояснения (публичный член-функция) |
Специальные члены-функции bad_expected_access<void> защищены. Они могут быть вызваны только производными классами.
Пример
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/utility/expected/bad_expected_access