- chrono[meta header]
- std::chrono[meta namespace]
- month[meta class]
- function[meta id-type]
- cpp20[meta cpp]
constexpr bool ok() const noexcept; // (1) C++20
month
オブジェクトが保持する月の値が[1, 12]
の範囲内かを判定する。
コンストラクタで設定されて保持している月を表す値m
があるとして、以下を返す:
return 1 <= m && m <= 12;
- この関数は、値の妥当性を検証するのではなく、カレンダー範囲の値をもっているかの判定をする
#include <cassert>
#include <chrono>
namespace chrono = std::chrono;
int main()
{
chrono::month m{1};
assert(m.ok());
assert(!chrono::month{0}.ok());
assert(!chrono::month{13}.ok());
}
- ok()[color ff0000]
- C++20
- Clang: 8.0 [mark verified]
- GCC: 9.2 [mark noimpl]
- Visual C++: 2019 Update 3 [mark noimpl]