std::expected<T,E>::value

来自cppreference.com
< cpp‎ | utility‎ | expected
 
 
工具库
通用工具
日期和时间
函数对象
格式化库 (C++20)
(C++11)
关系运算符 (C++20 中弃用)
整数比较函数
(C++20)(C++20)(C++20)
(C++20)
swap 与类型运算
(C++14)
(C++11)
(C++11)
(C++11)
(C++17)
常用词汇类型
(C++11)
(C++17)
(C++17)
(C++17)
(C++11)
(C++17)
(C++23)
初等字符串转换
(C++17)
(C++17)
 
 
constexpr T& value() &;
(1) (C++23 起)
constexpr const T& value() const&;
(2) (C++23 起)
constexpr T&& value() &&;
(3) (C++23 起)
constexpr const T&& value() const&&;
(4) (C++23 起)
1,2) 如果 *this 包含期待值,那么(通过复制)返回该期待值,或者在 T 是(可有 cv 限定的)bool 时无返回值。
否则,抛出包含 *this 中不期待值的 std::bad_expected_access 异常。
如果 std::is_copy_constructible_v<E>false,那么程序非良构。
3,4) 如果 *this 包含期待值,那么(通过移动)返回该期待值,或者在 T 是(可有 cv 限定的)bool 时无返回值。
否则,抛出包含 *this 中不期待值的 std::bad_expected_access 异常。
如果 std::is_copy_constructible_v<E>std::is_constructible_v<E, decltype(std::move(error()))>false,那么程序非良构。

参数

(无)

返回值

1-4) *this 包含的期待值。

异常

1,2)*this 包含不期待值时抛出 std::bad_expected_access(std::as_const(error()))
3,4)*this 包含不期待值时抛出 std::bad_expected_access(std::move(error()))

示例

参阅

如果有期待的值则返回它,否则返回另一个值
(公开成员函数)
返回期待的值
(公开成员函数)
返回不期待的值
(公开成员函数)
指示对含有不期待的值的 expected 的有检查访问的异常
(类模板)