Namespaces
Variants

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

From cppreference.net
定义于头文件 <chrono>
constexpr bool operator == ( const std:: chrono :: month_day & x,
const std:: chrono :: month_day & y ) noexcept ;
(1) (C++20 起)
constexpr std:: strong_ordering operator <=> ( const std:: chrono :: month_day & x,
const std:: chrono :: month_day & y ) noexcept ;
(2) (C++20 起)

比较两个 month_day 值。

< <= > >= != 运算符分别由 operator <=> operator == 合成。

返回值

1) x. month ( ) == y. month ( ) && x. day ( ) == y. day ( )
2) x. month ( ) <=> y. month ( ) ! = 0 ? x. month ( ) <=> y. month ( ) : x. day ( ) <=> y. day ( )

示例

#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);
}

输出:

true