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

履歴 編集

function
<chrono>

std::chrono::year::ok(C++20)

constexpr bool ok() const noexcept; // (1) C++20

概要

yearオブジェクトが保持する年の値が[min(), max()]の範囲内かを判定する。

戻り値

コンストラクタで設定されて保持している年を表す値yがあるとして、以下を返す:

return min().y <= y && y <= max().y;

備考

  • コンストラクタでこの範囲外の値が指定された場合、保持される値は未規定になる。そのため関数は、値の妥当性を検証することになる

#include <cassert>
#include <chrono>

namespace chrono = std::chrono;

int main()
{
  chrono::year y{2020};
  assert(y.ok());

  assert(chrono::year{-32767}.ok());
  assert(chrono::year{32767}.ok());
}

出力

バージョン

言語

  • C++20

処理系

  • Clang: 8.0
  • GCC: (9.2時点で実装なし)
  • Visual C++: (2019 Update 3時点で実装なし)

参照