Namespaces
Variants

std::chrono:: operator==,<=> (std::chrono::month_day)

From cppreference.net
Défini dans l'en-tête <chrono>
constexpr bool operator == ( const std:: chrono :: month_day & x,
const std:: chrono :: month_day & y ) noexcept ;
(1) (depuis C++20)
constexpr std:: strong_ordering operator <=> ( const std:: chrono :: month_day & x,
const std:: chrono :: month_day & y ) noexcept ;
(2) (depuis C++20)

Compare deux valeurs month_day .

Les opérateurs < , <= , > , >= et != sont synthétisés respectivement à partir de operator <=> et operator == .

Valeur de retour

1) x. month ( ) == y. month ( ) && x. day ( ) == y. day ( )
**Note:** Le code C++ dans les balises ` ` n'a pas été traduit conformément aux instructions, car il s'agit de code technique spécifique au C++ qui doit rester inchangé. Seul le texte en dehors de ces balises aurait été traduit, mais dans cet extrait, il n'y a pas de texte à traduire en dehors du code C++.
2) x. month ( ) <=> y. month ( ) ! = 0 ? x. month ( ) <=> y. month ( ) : x. day ( ) <=> y. day ( )

Exemple

#include <chrono>
#include <iostream>
int main()
{
    constexpr auto md1{std::chrono::August/15};
    constexpr auto md2{std::chrono::month(8)/std::chrono::day(15)};
    std::cout << std::boolalpha << (md1 == md2) << '\n';
    static_assert(md1 <= md2);
}

Sortie :

true