|
|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Member functions | ||||
weekday::operator+=weekday::operator-= | ||||
| Nonmember functions | ||||
| Helper classes | ||||
(C++26) |
constexprstd::chrono::weekday& operator+=(conststd::chrono::days& d)noexcept; | (1) | (since C++20) |
constexprstd::chrono::weekday& operator-=(conststd::chrono::days& d)noexcept; | (2) | (since C++20) |
Adds or subtractsd.count() from the weekday value, reducing the result modulo 7 to an integer in the range[0, 6].
Contents |
A reference to thisweekday after modification.
After a call to one of these functions,ok() is always true if no overflow occurred during the operation.
#include <chrono>#include <iostream> int main(){std::cout<<std::boolalpha; std::chrono::weekday wd{5};// Friday is 5 wd+=std::chrono::days(2);std::cout<<(wd==std::chrono::weekday(0))<<' '<<(wd==std::chrono::Sunday)<<' '; wd-=std::chrono::days(3);std::cout<<(wd==std::chrono::weekday(4))<<' '<<(wd==std::chrono::Thursday)<<' '; wd=std::chrono::Wednesday; wd+=std::chrono::days{8};// ((3 += 8 == 11) % 7) == 4;std::cout<<(wd==std::chrono::Thursday)<<' '; wd-=(std::chrono::Sunday-std::chrono::Tuesday);// -= -2// (4 -= -2) == 6std::cout<<(wd==std::chrono::Saturday)<<'\n';}
Output:
true true true true true true
| increments or decrements the weekday (public member function)[edit] | |
(C++20) | performs arithmetic onweekdays(function)[edit] |