Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Reprezentuje określony rok, miesiąc i nth dzień tygodnia miesiąca.
Składnia
class year_month_weekday; // C++20
Uwagi
year_month_weekday obsługuje arytmetyka zorientowana na lata i miesiące, ale nie arytmetyka zorientowana na dni. W przypadku arytmetyki zorientowanej na dni użyj sys_days konwersji w celu przekonwertowania na sys_dayselement , który obsługuje arytmetyczną zorientowaną na dni.
year_month_weekday jest trywialnie kopiowalnym i standardowym typem klasy układu.
Członkowie
| Nazwa | Opis |
|---|---|
Constructor |
Skonstruuj element year_month_weekday z określonym miesiącem i dniem tygodnia. |
index |
Pobierz indeks dnia tygodnia. |
month |
Pobierz wartość miesiąca. |
ok |
Sprawdź, czy year_month_weekday element jest prawidłowy. |
operator+= |
Dodaj określoną liczbę miesięcy lub lat. |
operator-= |
Odejmij określoną liczbę miesięcy lub lat. |
operator local_days |
Pobierz liczbę dni z system_clock epoki do tej year_month_weekday wartości jako local_days. |
operator sys_days |
Pobierz liczbę dni z system_clock epoki do tej year_month_weekday wartości jako sys_days. |
weekday |
Pobierz dzień powszedni. |
weekday_indexed |
Pobierz plik weekday_indexed przechowywany w tym pliku year_month_weekday. |
year |
Pobierz rok. |
Inne niż elementy członkowskie
| Nazwa | Opis |
|---|---|
operator+ |
Dodaj miesiące lub lata. |
operator- |
Odejmowanie miesięcy lub lat. |
operator== |
Ustal, czy dwie year_month_weekday wartości są równe. |
operator<< |
year_month_weekday Wyprowadź element do danego strumienia. |
Wymagania
Nagłówek:<chrono> (od C++20)
Namespace:std::chrono
Opcja kompilatora:/std:c++latest
Konstruktor
Tworzy year_month_weekday.
// 1)
year_month_weekday() = default
// 2)
constexpr year_month_weekday(const year& y, const month& m, const weekday_indexed& wdi) noexcept;
// 3)
constexpr explicit year_month_weekday(const local_days& dp) noexcept;
// 4)
constexpr year_month_weekday(const sys_days& dp) noexcept;
Parametry
m
Wartość wyliczenia month.
dp
A sys_days lub local_days
wdi
Wartość wyliczenia weekday.
y
Wartość wyliczenia year.
Uwagi: Konstruktor
1) Domyślny konstruktor nie inicjuje żadnego z pól.
2) Konstruuje obiekt year_month_weekday odpowiadający określonej wartości year, monthi weekday_indexed.
3) Tworzy element year_month_weekday odpowiadający dacie reprezentowanej przez sys_days{dp.time_since_epoch()}element .
4) Tworzy element year_month_weekday odpowiadający dacie reprezentowanej przez dpelement . Dla dowolnego year_month_weekday (ymdl), dla którego ok() parametr to true, porównanie z wartością operator==year_month_weekday{sys_days{ymdl}} będzie .true
Aby uzyskać informacje o składni języka C++20 używanej do określania dat, zobacz operator/
Przykład: tworzenie elementu year_month_weekday
// compile using: /std:c++latest
#include <iostream>
#include <chrono>
using namespace std::chrono;
int main()
{
year_month_weekday ymw{1997y / January / Wednesday[1]};
std::cout << ymw << '\n';
return 0;
}
1997/Jan/Wed[1]
index
Pobierz indeks tygodnia dnia tygodnia w tym year_month_weekdaypliku .
constexpr unsigned index() const noexcept;
Wartość zwracana
Indeks dnia tygodnia. Jeśli na przykład dzień tygodnia był pierwszą środą tygodnia, indeks będzie wynosił 1.
month
Pobierz wartość miesiąca.
constexpr month month() const noexcept;
Wartość zwracana
Wartość wyliczenia month.
ok
Sprawdź, czy wartość przechowywana w tym year_month_weekday miejscu jest prawidłowa. Element year, monthi weekday_index przechowywany w tym year_month_weekday pliku musi być ok przeznaczony dla tej funkcji, aby zwracała wartość true. W przeciwnym razie zwraca wartość false.
constexpr bool ok() const noexcept;
Wartość zwracana
true jeśli wartość jest prawidłowa year_month_weekday . W przeciwnym razie false.
Wartość jest year_month_weekday prawidłowa, jeśli wartość month jest prawidłowa, a wartość jest prawidłowa weekday_indexed .
operator+=
Dodaj miesiące lub lata do tego year_month_weekdayelementu .
1) constexpr year_month_weekday& operator+=(const months& m) noexcept;
2) constexpr year_month_weekday& operator+=(const years& y) noexcept;
Parametry
m
Liczba miesięcy do dodania.
y
Liczba lat do dodania.
Wartość zwracana
*this odzwierciedla wynik dodawania.
Przykład: operator+=
// compile using: /std:c++latest
#include <iostream>
#include <chrono>
using namespace std::chrono;
int main()
{
year_month_weekday ymw{1997y / January / Wednesday[1]};
std::cout << ymw << '\n';
ymw += months{1};
ymw += years{1};
std::cout << ymw << '\n';
return 0;
}
1997/Jan/Wed[1]
1998/Feb/Wed[1]
operator-=
Odejmij miesiące lub lata od tego year_month_weekday.
1) constexpr year_month_weekday& operator-=(const months& m) noexcept;
2) constexpr year_month_weekday& operator-=(const years& y) noexcept;
Parametry
m
Liczba miesięcy do odejmowania.
y
Liczba lat do odejmowania.
Wartość zwracana
*this odzwierciedla wynik odejmowania.
Przykład: operator-=
// compile using: /std:c++latest
#include <iostream>
#include <chrono>
using namespace std::chrono;
int main()
{
year_month_weekday ymw{1997y / January / Wednesday[1]};
std::cout << ymw << '\n';
ymw -= months{1};
ymw -= years{1};
std::cout << ymw << '\n';
return 0;
}
1997/Jan/Wed[1]
1995/Dec/Wed[1]
operator local_days
Pobierz liczbę dni od system_clock epoki (1/1/1970) do tej year_month_weekday wartości jako local_days
constexpr explicit operator local_days() const noexcept;
Wartość zwracana
Jeśli ok()wartość , zwraca liczbę dni jako local_days{sys_days{*this}.time_since_epoch()}. W przeciwnym razie zwrócona wartość jest nieokreślona.
operator sys_days
Pobierz liczbę dni z system_clock epoki (1.1.1.1.1970) do tej year_month_day wartości jako sys_days.
constexpr operator sys_days() const noexcept;
Wartość zwracana
Jeśli ok()funkcja zwraca wartość sys_days , która reprezentuje datę, która jest (index() - 1) * 7 następująca: dni po pierwszym weekday() z year()/month(). Jeśli index() wartość to 0, zwracana sys_days wartość reprezentuje datę 7 dni przed pierwszą weekday() wartością year()/month().
weekday
weekday Pobierz plik przechowywany w pliku przechowywanym weekday_indexed w tym year_month_weekdaypliku .
constexpr weekday weekday() const noexcept;
Wartość zwracana
Wartość wyliczenia weekday.
weekday_indexed
Pobierz plik weekday_indexed przechowywany w tym pliku year_month_weekday.
constexpr weekday_indexed weekday_indexed() const noexcept;
Wartość zwracana
Wartość wyliczenia weekday_indexed.
year
Pobierz wartość roku.
constexpr year year() const noexcept;
Wartość zwracana
Wartość wyliczenia year.
Zobacz także
<chrono>
year
year_month
year_month_day
year_month_day_last
year_month_weekday_last
operator/
Odwołanie do plików nagłówka