std::chrono::month::operator++, std::chrono::month::operator--
From cppreference.com
constexpr std::chrono::month& operator++() noexcept; |
(1) | (since C++20) |
constexpr std::chrono::month operator++(int) noexcept; |
(2) | (since C++20) |
constexpr std::chrono::month& operator--() noexcept; |
(3) | (since C++20) |
constexpr std::chrono::month operator--(int) noexcept; |
(4) | (since C++20) |
Adds or subtracts 1 from the month value, reducing the result modulo 12 to an integer in the range [1, 12].
1-2) Performs *this += std::chrono::months{1};
3-4) Performs *this -= std::chrono::months{1};
Parameters
(none)
Return value
1,3) a reference to this
month
after modification2,4) a copy of the
month
made before modificationNotes
After a call to one of these functions, ok() is always true.
Example
Run this code
#include <cassert> #include <iostream> #include <chrono> int main() { std::chrono::month m {6}; ++m; assert(m == std::chrono::month(7)); --m; assert(m == std::chrono::month(6)); m = std::chrono::December; m++; // rounds up to January assert(m.ok()); std::cout << unsigned(m) << '\n'; m = std::chrono::January; m--; // rounds down to December assert(m.ok()); std::cout << unsigned(m) << '\n'; }
Output:
1 12
See also
adds or subtracts a number of months (public member function) | |
(C++20) |
performs arithmetic on month s (function) |