Namespaces
Variants

std::chrono::month_day:: ok

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

Determina si este month_day almacena una combinación válida de mes-día.

La combinación es válida si month() representa un mes válido ( month ( ) . ok ( ) == true ), unsigned { day ( ) } >= 1 , y unsigned { day ( ) } <= D , donde D es el número de días en el mes representado por month() . El número de días en febrero se considera 29.

Valor de retorno

true si la combinación de mes y día es válida, de lo contrario false.

Ejemplo

#include <chrono>
#include <iostream>
int main()
{
    std::cout << std::boolalpha;
    constexpr auto md1{std::chrono::July/15};
    std::cout << (md1.ok()) << ' ';
    constexpr std::chrono::month_day md2{std::chrono::month(14), std::chrono::day(42)};
    std::cout << (md2.ok()) << ' ';
    constexpr auto md3{std::chrono::February/29};
    std::cout << (md3.ok()) << '\n';
}

Salida:

true false true