std::chrono::year::operator++, std::chrono::year::operator--
From cppreference.com
C++
Feature test macros (C++20)
Concepts library (C++20)
Metaprogramming library (C++11)
Ranges library (C++20)
Filesystem library (C++17)
Concurrency support library (C++11)
Execution control library (C++26)
Date and time library
(C++11)
(C++20)
(C++20)
(C++11)
(C++11)
(C++11)
(C++20)
(C++20)
(C++20)
(C++11)
(C++20)
(C++20)
(C++20)
(C++20)(C++20)
(C++20)(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)(C++20)
(C++20)
(C++20)
(C++20)
(C++20)(C++20)(C++20)(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
std::chrono::year
Member functions
year::operator++year::operator--
Nonmember functions
Helper classes
(C++26)
constexpr std::chrono::year & operator++() noexcept;
(1)
(since C++20)
constexpr std::chrono::year operator++( int ) noexcept;
(2)
(since C++20)
constexpr std::chrono::year & operator--() noexcept;
(3)
(since C++20)
constexpr std::chrono::year operator--( int ) noexcept;
(4)
(since C++20)
Adds or subtracts 1 from the year value.
1,2) Performs *this += std::chrono::years {1};.
3,4) Performs *this -= std::chrono::years {1};.
Contents
[edit] Parameters
(none)
[edit] Return value
1,3) A reference to this
year
after modification.2,4) A copy of the
year
made before modification.[edit] Notes
If the result would be outside the range [
-32767,
32767]
, the actual stored value is unspecified.
[edit] Example
Run this code
#include <chrono> #include <iostream> int main() { std::cout << std::boolalpha ; std::chrono::year y{2020}; std::cout << (++y == std::chrono::year (2021)) << ' '; std::cout << (--y == std::chrono::year (2020)) << '\n'; using namespace std::literals::chrono_literals; y = 32767y; y++; //← unspecified, see ↑ Notes ↑ std::cout << static_cast<int>(y) << '\n'; }
Possible output:
true true -32768