Udostępnij za pośrednictwem


Klasa year_month

Reprezentuje miesiąc i rok. Nie określono dnia.

Składnia

class year_month; // C++20

Elementy członkowskie

Nazwa/nazwisko opis
Konstruktory Konstruowanie year_month
year Zwraca rok.
month Zwraca miesiąc.
ok Sprawdź, czy year wartości i month znajdują się w prawidłowym zakresie.
operator+= Dodaj określoną liczbę miesięcy lub lat.
operator-= Odejmij określoną liczbę miesięcy lub lat.

Inne niż elementy członkowskie

Nazwa/nazwisko opis
from_stream Analizowanie strumienia year_month przy użyciu określonego formatu
operator+ Dodaj miesiące i/lub lata.
operator- Odejmij miesiące i/lub lata.
operator== Ustal, czy dwie year_month wartości są równe.
operator<=> Porównaj dwie year_month wartości. Operatory >, >=, <=, <, != są syntetyzowane przez kompilator.
operator<< year_month Wyprowadzanie elementu do strumienia.

Wymagania

Nagłówek: <chrono> (od C++20)

Przestrzeń nazw: std::chrono

Opcja kompilatora: /std:c++latest

Konstruktory

Skonstruuj element year_month.

1) year_month() = default;
2) constexpr year_month(const year& y, const month& m) noexcept;

Parametry

y
Wartość wyliczenia year.

m
Wartość wyliczenia month.

Uwagi

1) Konstruktor domyślny nie inicjuje year wartości lub month .
2) Konstruowanie elementu year_month z określonymi wartościami.

Aby uzyskać informacje o składni języka C++20 w celu określenia dat, zobacz operator/

Przykład: tworzenie elementu year_month

// compile using: /std:c++latest
#include <iostream>
#include <chrono>

using namespace std::chrono;

int main()
{
    year_month ym{2021y / June};

    std::cout << ym;
    return 0;
}
2021/Jun

month

Pobierz miesiąc.

constexpr month month() const noexcept;

Wartość zwracana

Wartość wyliczenia month.

year

Pobierz rok.

constexpr year year() const noexcept;

Wartość zwracana

year.

ok

Sprawdź, czy wartość roku i miesiąca przechowywane w tym year_month zakresie znajdują się w prawidłowym zakresie.

constexpr bool ok() const noexcept;

Wartość zwracana

trueyear_month jeśli wartości roku i miesiąca znajdują się w prawidłowym zakresie. W przeciwnym razie wartość false.

operator+=

Dodaj miesiące lub lata do tego year_monthelementu .

1) constexpr year_month& operator+=(const months& dm) noexcept;
2) constexpr year_month& operator+=(const years& dy) noexcept;

Parametry

dm
Liczba miesięcy do dodania.

dy
Liczba lat do dodania.

Wartość zwracana

*this, który odzwierciedla wynik dodawania.

Przykład: operator +=

// compile using: /std:c++latest
#include <iostream>
#include <chrono>

using namespace std::chrono;

int main()
{
    year_month ym{2021y / June};

    std::cout << ym << '\n';

    ym += months{2};
    ym += years{1};

    std::cout << ym;
    
    return 0;
}
2021/Jun
2022/Aug

operator-=

Odejmij miesiące lub lata od tego year_month.

1) constexpr year_month& operator-=(const months& dm) noexcept;
2) constexpr year_month& operator-=(const years& dy) noexcept;

Parametry

dm
Liczba miesięcy do odejmowania.

dy
Liczba lat do odejmowania.

Wartość zwracana

*this, który odzwierciedla wynik odejmowania.

Przykład: operator -=

// compile using: /std:c++latest
#include <iostream>
#include <chrono>

using namespace std::chrono;

int main()
{
    year_month ym{2021y / June};

    std::cout << ym << '\n';

    ym -= months{2};
    ym -= years{1};

    std::cout << ym;
    
    return 0;
}
2021/Jun
2020/Apr

Zobacz też

<chrono>
year
year_month_day
year_month_day_last
year_month_weekday
year_month_weekday_last
operator/
Odwołanie do plików nagłówka