Spec-Zone.ru › C++

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)
1) Определяет тип объекта, который будет брошен функцией std::expected::value, при попытке доступа к ожидаемому объекту, содержащему неожиданное значение. bad_expected_access<E> хранит копию неожиданного значения.
2) 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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API