Namespaces
Variants

std::chrono:: operator+, std::chrono:: operator- (std::chrono::year_month_weekday_last)

From cppreference.net
(depuis C++20)
(depuis C++20)
(depuis C++20)
(depuis C++20)
(depuis C++20)
(depuis C++20)
1,2) Ajoute dm. count ( ) mois à la date représentée par ymwdl . Le résultat a la même year() et le même month() que std:: chrono :: year_month ( ymwdl. year ( ) , ymwdl. month ( ) ) + dm et le même weekday() que ymwdl .
3,4) Ajoute dy. count ( ) années à la date représentée par ymwdl . Le résultat est équivalent à std:: chrono :: year_month_weekday_last ( ymwdl. year ( ) + dy, ymwdl. month ( ) , ymwd. weekday_last ( ) ) .
5) Soustrait dm. count ( ) mois de la date représentée par ymwdl . Équivalent à ymwdl + - dm .
6) Soustrait dy. count ( ) années de la date représentée par ymwdl . Équivalent à ymwdl + - dy .

Pour les durées qui sont convertibles à la fois en std::chrono::years et en std::chrono::months , les surcharges years (3,4,6) sont préférées si l'appel serait autrement ambigu.

Exemple

#include <cassert>
#include <chrono>
using namespace std::chrono;
int main()
{
    constexpr auto ymwdl1{Tuesday[last]/11/2021};
    auto ymwdl2 = ymwdl1;
    ymwdl2 = std::chrono::months(12) + ymwdl2;
    ymwdl2 = ymwdl2 - std::chrono::years(1);
    assert(ymwdl1 == ymwdl2);
}