std::chrono::month::operator++, std::chrono::month::operator--
Материал из cppreference.com
<tbody>
</tbody>
constexpr std::chrono::month& operator++() noexcept; |
(1) | (начиная с C++20) |
constexpr std::chrono::month operator++(int) noexcept; |
(2) | (начиная с C++20) |
constexpr std::chrono::month& operator--() noexcept; |
(3) | (начиная с C++20) |
constexpr std::chrono::month operator--(int) noexcept; |
(4) | (начиная с C++20) |
Добавляет или вычитает 1 из значения месяца, уменьшая результат по модулю 12 до целого числа в диапазоне [1, 12].
1,2) Выполняет
*this += std::chrono::months{1};.3,4) Выполняет
*this -= std::chrono::months{1};.Параметры
(нет)
Возвращаемое значение
1,3) Ссылка на этот
month после модификации.2,4) Копия
month, сделанная до изменения.Примечание
После вызова одной из этих функций ok() всегда true.
Пример
Запустить этот код
#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++; // возвращается к январю
assert(m.ok());
std::cout << unsigned(m) << '\n';
m = std::chrono::January;
m--; // возвращается к декабрю
assert(m.ok());
std::cout << unsigned(m) << '\n';
}
Вывод:
1
12
Смотрите также
| прибавляет или вычитает количество месяцев (public функция-элемент) | |
(C++20) |
выполняет арифметические действия над month (функция) |