constexpr bool ok() const noexcept; // (1) C++20
概要
weekday
オブジェクトが保持する曜日の値が[0, 6]
の範囲内かを判定する。
戻り値
コンストラクタで設定されて保持している曜日を表す値wd
があるとして、以下を返す:
return wd <= 6;
備考
- この関数は、値の妥当性を検証するのではなく、カレンダー範囲の値をもっているかの判定をする
例
出力
バージョン
言語
- C++20
処理系
- Clang: 8.0 (値7は0にならない) ✅, 10.0 ✅
- GCC: 9.2 ❌
- Visual C++: 2019 Update 3 ❌
参照
- P1466R3 Miscellaneous minor fixes for chrono
- C++20で新規追加されるこの機能の策定中では、当初は日曜日ではじまり土曜日までの範囲をサポートしていた (
tm_wday
仕様の曜日範囲[0, 6]
)。C++20の仕様が固まった段階では、ISO 8601で規定される、月曜日ではじまり日曜日までの曜日範囲 ([1, 7]
) もサポートすることになり、値範囲[1, 7]
を値範囲[0, 6]
に変換する仕様が追加された
- C++20で新規追加されるこの機能の策定中では、当初は日曜日ではじまり土曜日までの範囲をサポートしていた (