std::chrono::month::operator+=, std::chrono::month::operator-=
来自 cppreference.cn
constexpr std::chrono::month& operator+=( const std::chrono::months& m ) noexcept; |
(1) | (自 C++20 起) |
constexpr std::chrono::month& operator-=( const std::chrono::months& m ) noexcept; |
(2) | (自 C++20 起) |
将 m.count() 加到或减去月份值,并将结果模 12 约简为 [1, 12] 范围内的整数。
1) 执行 *this = *this + m;。
2) 执行 *this = *this - m;。
目录 |
[编辑] 返回值
修改后对这个 month
的引用。
[编辑] 注释
在调用这些函数之一后,如果没有在操作期间发生溢出,则 ok()
始终为 true。
[编辑] 示例
运行此代码
#include <chrono> #include <iostream> int main() { std::cout << std::boolalpha; std::chrono::month m{6}; m += std::chrono::months(2); std::cout << (m == std::chrono::month(8)) << ' ' << (m == std::chrono::August) << ' '; m -= std::chrono::months(3); std::cout << (m == std::chrono::month(5)) << ' ' << (m == std::chrono::May) << ' '; m = std::chrono::October; m += std::chrono::months{8}; // ((10 += 8 == 18) % 12) == 6; std::cout << (m == std::chrono::June) << ' '; m -= std::chrono::months{std::chrono::December - std::chrono::February}; // -= 10 // (6 -= 10) == -4; -4 % 12 == (12 - 4) == 8 std::cout << (m == std::chrono::August) << '\n'; }
输出
true true true true true true
[编辑] 参见
递增或递减月份 (公共成员函数) | |
(C++20) |
对 month 执行算术运算(函数) |