std::expected<T,E>::value — cppreference.com
Материал из cppreference.com
<tbody> </tbody>
| T is not cv void |
||
|
|
(1) | (начиная с C++23) |
|
|
(2) | (начиная с C++23) |
|
|
(3) | (начиная с C++23) |
|
|
(4) | (начиная с C++23) |
| T is cv void |
||
|
|
(5) | (начиная с C++23) |
|
|
(6) | (начиная с C++23) |
Если *this содержит ожидаемое значение, возвращает ссылку на содержащееся значение. Ничего не возвращает, если T является (возможно, cv-квалифицированным) void.
Иначе генерируется исключение типа std::bad_expected_access<std::decay_t<E>>, содержащее копию error().
1,2,5) Если std::is_copy_constructible_v<E> равно false, программа некорректна.
3,4,6) Если std::is_copy_constructible_v<E> или std::is_constructible_v<E, decltype(std::move(error()))> равны false, программа некорректна.
Параметры
(нет)
Возвращаемое значение
@1-4) Ожидаемое значение, содержащееся в *this.
5,6) (нет)
Исключения
1,2,5) Генерирует std::bad_expected_access(std::as_const(error())), если *this содержит неожидаемое значение.
3,4,6) Генерирует std::bad_expected_access(std::move(error())), если *this содержит неожидаемое значение.