operator==,!=,<,<=,>,>=(std::chrono::duration)
来自cppreference.com
template <class Rep1, class Period1, class Rep2, class Period2> constexpr bool operator==(const duration<Rep1, Period1>& lhs, |
(1) | |
template <class Rep1, class Period1, class Rep2, class Period2> constexpr bool operator!=(const duration<Rep1, Period1>& lhs, |
(2) | |
template <class Rep1, class Period1, class Rep2, class Period2> constexpr bool operator<(const duration<Rep1, Period1>& lhs, |
(3) | |
template <class Rep1, class Period1, class Rep2, class Period2> constexpr bool operator<=(const duration<Rep1, Period1>& lhs, |
(4) | |
template <class Rep1, class Period1, class Rep2, class Period2> constexpr bool operator>(const duration<Rep1, Period1>& lhs, |
(5) | |
template <class Rep1, class Period1, class Rep2, class Period2> constexpr bool operator>=(const duration<Rep1, Period1>& lhs, |
(6) | |
比较二个时长。
1-2) 检查 lhs
与 rhs
是否相等,即以两个 duration 的共用类型表示的计次数是否相等。
3-6) 比较 lhs
与 rhs
,即比较两个 duration 的共用类型表示的计次数。
参数
lhs | - | 运算符左侧的 duration |
rhs | - | 运算符右侧的 duration |
返回值
假设 CT =
std::common_type<std::chrono::duration<Rep1, Period1>,
std::chrono::duration<Rep2, Period2>>::type ,则为:
1) CT(lhs).count() == CT(rhs).count()
2) !(lhs == rhs)
3) CT(lhs).count() < CT(rhs).count()
4) !(rhs < lhs)
5) rhs < lhs
6) !(lhs < rhs)
示例
运行此代码
#include <chrono> #include <iostream> int main() { if(std::chrono::seconds(2) == std::chrono::milliseconds(2000)) std::cout << "2 s == 2000 ms\n"; else std::cout << "2 s != 2000 ms\n"; if(std::chrono::seconds(61) > std::chrono::minutes(1)) std::cout << "61 s > 1 min\n"; else std::cout << "61 s <= 1 min\n"; }
输出:
2 s == 2000 ms 61 s > 1 min