Namespaces
Variants

std::chrono::year_month_weekday:: ok

From cppreference.net
constexpr bool ok ( ) const noexcept ;
(C++20以降)

この year_month_weekday オブジェクトが有効な日付を表しているかどうかをチェックします。

戻り値

true この year_month_weekday オブジェクトが有効な日付を表す場合、すなわち year ( ) . ok ( ) && month ( ) . ok ( ) && weekday_indexed ( ) . ok ( ) true であり、かつ指定された年と月に少なくとも index() weekday() 存在する場合。それ以外の場合は false

#include <cassert>
#include <chrono>
int main()
{
    auto ymwdi{std::chrono::Wednesday[1]/1/2021};
    assert(ymwdi.ok());
    ymwdi = std::chrono::year(2021)/std::chrono::month(1)/std::chrono::Wednesday[42];
    assert(!ymwdi.ok());
}