std::chrono:: operator==,<=> (std::chrono::year_month_day_last)
|
Определено в заголовочном файле
<chrono>
|
||
|
constexpr
bool
operator
==
(
const
std::
chrono
::
year_month_day_last
&
x,
const std:: chrono :: year_month_day_last & y ) noexcept ; |
(1) | (начиная с C++20) |
|
constexpr
std::
strong_ordering
operator
<=>
(
const
std::
chrono
::
year_month_day_last
&
x,
|
(2) | (начиная с C++20) |
Сравнивает два значения
year_month_day_last
x
и
y
. Это лексикографическое сравнение: сначала сравнивается
year()
, затем
month()
.
Операторы
<
,
<=
,
>
,
>=
и
!=
синтезируются
соответственно
из
operator
<=>
и
operator
==
.
Возвращаемое значение
Примечания
Если оба x и y представляют корректные даты ( x. ok ( ) && y. ok ( ) == true ), результат лексикографического сравнения соответствует календарному порядку.
Пример
#include <cassert> #include <chrono> #include <iostream> int main() { auto ymdl1{11/std::chrono::last/2020}; auto mdl{std::chrono::last/std::chrono::November}; auto ymdl2{mdl/2020}; assert(ymdl1 == ymdl2); ymdl1 -= std::chrono::months{2}; ymdl2 -= std::chrono::months{1}; assert(ymdl1 < ymdl2); }