最終更新日時(UTC):
が更新

履歴 編集

class
<expected>

std::unexpect_t(C++23)

namespace std {
  struct unexpect_t {
    explicit unexpect_t() = default;
  };

  inline constexpr unexpect_t unexpect{};
}

概要

unexpected_tは、expectedコンストラクタにおいて、エラー値型のコンストラクタ引数を受け取って構築するためのタグ型である。

unexpected_t型の定数unexpectが提供される。

#include <cassert>
#include <expected>
#include <system_error>

int main()
{
  std::expected<int, std::error_code> x{std::unexpect, ETIMEDOUT, std::system_category()};
  assert(not x.has_value());
  assert(x.error().value() == ETIMEDOUT);
  assert(x.error().category() == std::system_category());
}

出力

バージョン

言語

  • C++23

処理系

関連項目

参照