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で新規追加されるこの機能の策定中では、当初は日曜日ではじまり土曜日までの範囲をサポートしていた (