std::chrono:: operator==,<=> (std::chrono::year_month_day)
|
Défini dans l'en-tête
<chrono>
|
||
|
constexpr
bool
operator
==
(
const
std::
chrono
::
year_month_day
&
x,
const std:: chrono :: year_month_day & y ) noexcept ; |
(1) | (depuis C++20) |
|
constexpr
std::
strong_ordering
operator
<=>
(
const
std::
chrono
::
year_month_day
&
x,
|
(2) | (depuis C++20) |
Compare les deux valeurs
year_month_day
x
et
y
. Il s'agit d'une comparaison lexicographique : le
year()
est comparé en premier, puis le
month()
, puis le
day()
.
Les opérateurs
<
,
<=
,
>
,
>=
et
!=
sont
synthétisés
respectivement à partir de
operator
<=>
et
operator
==
.
Valeur de retour
Notes
Si les deux x et y représentent des dates valides ( x. ok ( ) && y. ok ( ) == true ), le résultat de la comparaison lexicographique est cohérent avec l'ordre calendaire.
Exemple
#include <chrono> int main() { constexpr auto ymd1{std::chrono::day(13)/7/1337}; constexpr auto ymd2{std::chrono::year(1337)/7/13}; static_assert(ymd1 == ymd2); static_assert(ymd1 <= ymd2); static_assert(ymd1 >= ymd2); static_assert(ymd1 <=> ymd2 == 0); }