std::chrono...::operator-=(3)
π NAME π
okay so this is the std::chrono...::operator-=(3) page from the C++ Standard Libary manual β and yes, the header really spells it Libary, and I'm not fixing it, bestie π. The NAME line is std::chrono::month::operator+=,std::chrono::month::operator-=, then a dash, then the exact same thing again: std::chrono::month::operator+=,std::chrono::month::operator-=. slay.
β¨ Synopsis β¨
The page lists two signatures, both constexpr, both returning std::chrono::month&, both taking const std::chrono::months& m, and both noexcept. They're giving since-C++20 energy.
(1)(since C++20)
constexpr std::chrono::month& operator+=( const
std::chrono::months& m ) noexcept;
(2)(since C++20)
constexpr std::chrono::month& operator-=( const
std::chrono::months& m ) noexcept;
Adds or subtracts m.count() from the month value, reducing the result modulo 12 to an integer in the range [1, 12].
- 1) Performs
*this = *this + m;. - 2) Performs
*this = *this - m;.
π«Ά Return value π«Ά
A reference to this month after modification.
πΈ Notes πΈ
After a call to one of these functions, ok() is always true if no overflow occurred during the operation.
π Example π
the page says // Run this code before the snippet, so here's that exact code:
#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';
}
π Output π
true true true true true true
π See also π
the See also crew:
operator++operator++(int)β increments or decrements the monthoperator--β (public member function)operator--(int)operator+β performs arithmetic on monthsoperator-β (function)- (C++20)
that's the whole page, mwah π β source/version http://cppreference.com, date 2024.06.10, and the footer's page name std::chrono...::operator-=(3).
π¦ where this page comes from
- nixpkgs unstable: stdman 2024.07.05
- opensuse-leap 16.0: stdman 2024.07.05-bp160.1.9 Β· MIT
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms