|
|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Member functions | ||||
| Nonmember functions | ||||
operator+operator- | ||||
| Helper classes | ||||
(C++26) |
constexprstd::chrono::year operator+(conststd::chrono::year& y, conststd::chrono::years& ys)noexcept; | (1) | (since C++20) |
constexprstd::chrono::year operator+(conststd::chrono::years& ys, conststd::chrono::year& y)noexcept; | (2) | (since C++20) |
constexprstd::chrono::year operator-(conststd::chrono::year& y, conststd::chrono::years& ys)noexcept; | (3) | (since C++20) |
constexprstd::chrono::years operator-(conststd::chrono::year& y1, conststd::chrono::year& y2)noexcept; | (4) | (since C++20) |
Contents |
If the resulting year value for(1-3) is outside the range[-32767, 32767], the actual value stored is unspecified.
The result of subtracting twoyear values is a duration of typestd::chrono::years. This duration unit represents the length of the average Gregorian year, and the resulting duration bears no relationship to the number of days in the particular years represented by the operands. For example, the result of2018y- 2017y isstd::chrono::years(1), which represents 365.2425 days, not 365 days.
#include <cassert>#include <chrono> int main(){std::chrono::year y{2020}; y=std::chrono::years(12)+ y;// overload (2): duration + time pointassert(y==std::chrono::year(2032)); y= y-std::chrono::years(33);// overload (3): time point - durationassert(y==std::chrono::year(1999)); // y = std::chrono::years(33) - y; // not supported: duration - time point usingnamespace std::chrono;constexprstd::chrono::years ys= 2025y- 2020y;// overload (4) static_assert(ys==std::chrono::years(5));}
| increments or decrements the month (public member function of std::chrono::month)[edit] | |
| adds or subtracts a number of months (public member function of std::chrono::month)[edit] |