std::chrono:: operator==,<=> (std::chrono::year_month_day)
|
ヘッダーで定義
<chrono>
|
||
|
constexpr
bool
operator
==
(
const
std::
chrono
::
year_month_day
&
x,
const std:: chrono :: year_month_day & y ) noexcept ; |
(1) | (C++20以降) |
|
constexpr
std::
strong_ordering
operator
<=>
(
const
std::
chrono
::
year_month_day
&
x,
|
(2) | (C++20以降) |
2つの
year_month_day
値
x
と
y
を比較します。これは辞書式比較です:
year()
が最初に比較され、次に
month()
、そして
day()
が比較されます。
<
、
<=
、
>
、
>=
、および
!=
演算子は、
それぞれ
operator
<=>
と
operator
==
から合成されます。
戻り値
注記
x と y の両方が有効な日付を表す場合( x. ok ( ) && y. ok ( ) == true )、辞書順比較の結果は暦順と一致します。
例
#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); }