最終更新日時: 2024年06月11日 22時45分38秒 (JST)
Akira Takahashi が更新

履歴 編集

<expected>

# expected(C++23)

`<expected>`ヘッダでは、任意の正常値または任意のエラー値のどちらかを持たせられるオブジェクトの型を定義する。

名前 | 説明 | 対応バージョン
--- | --- | ---
`expected` | 正常値かエラー値を保持するオブジェクト (class template) | C++23
`unexpected` | エラー値の代入補助クラス (class template) | C++23
`unexpect_t` | エラー値の直接構築を指示するタグ型 (class) | C++23
`bad_expected_access` | エラー値保持時に正常値へアクセスした場合に発生する例外 (class template) | C++23

## バージョン

### 言語

- C++23

### 処理系

- Clang: 16.0 ✅
- GCC: 12.1 ✅
- ICC: ??
- Visual C++: ??

## 関連項目

- `optional`

## 参照

- P0323R12 std::expected
- P2549R1 `std::unexpected<E>` should have `error()` as member accessor
- P2505R5 Monadic Functions for `std::expected`