std::chrono::operator==,<=>(std::chrono::month_day)
来自 cppreference.com
定义在头文件 <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