std::expected<T,E>::value
From cppreference.com
| プライマリテンプレート |
||
| 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から) |
| void 部分特殊化 |
||
| constexpr void value() const&; |
(5) | (C++23から) |
| constexpr void value() &&; |
(6) | (C++23から) |
もし *this が期待される値を含む場合、その格納された値への参照を返します。 void 部分特殊化の場合は何も返しません。
それ以外の場合、 std::bad_expected_access 型の例外をスローします。この例外は error() のコピーを含みます。
3,4) もし
std::is_copy_constructible_v<E> または std::is_constructible_v<E, decltype(std::move(error()))> が false ならば、プログラムは不定形です。目次 |
[編集] 戻り値
1,2)
val3,4) std::
move(val)[編集] 例外
[編集] 例
| このセクションは未完成です 理由: 例がありません |
[編集] 欠陥報告
以下の動作変更を伴う欠陥報告が、以前に公開されたC++標準に遡って適用されました。
| DR | 適用対象 | 公開された動作 | 正しい動作 |
|---|---|---|---|
| LWG 3940 | C++23 | E は、オーバーロード (5,6) に対してコピー/ムーブ構築可能である必要はありませんでした。 |
必要 |
[編集] 関連項目
| 期待される値が存在すればそれを返し、そうでなければ別の値を返す (public member function) | |
| 期待される値にアクセスする (public member function) | |
| 期待されない値を返す (public member function) | |
| (C++23) |
期待されない値を含む expected へのチェック付きアクセスを示す例外(class template) |