Classe year_month_weekday_last
Anno, mese e ultimo giorno feriale del mese specifico.
Sintassi
class year_month_weekday_last; // C++20
Osservazioni:
year_month_weekday_last
supporta aritmetica orientata a anni e mesi, ma non aritmetica orientata ai giorni. Per l'aritmetica orientata ai giorni, usare la conversione per eseguire la sys_days
conversione in , sys_days
che supporta l'aritmetica orientata ai giorni.
year_month_weekday_last
è un tipo di classe di layout semplice e copiabile standard.
Membri
Nome | Descrizione |
---|---|
Constructor |
Costruire un year_month_weekday_last oggetto con il mese e il giorno della settimana specificati. |
month |
Ottenere il valore del mese. |
ok |
Controllare se è year_month_weekday_last valido. |
operator+= |
Aggiungere il numero specificato di mesi o anni. |
operator-= |
Sottrarre il numero specificato di mesi o anni. |
operator local_days |
Ottenere il numero di giorni dal system_clock periodo a questo year_month_weekday_last come local_days . |
operator sys_days |
Ottenere il numero di giorni dal system_clock periodo a questo year_month_weekday_last come sys_days . |
weekday |
Prendi il giorno feriale. |
weekday_last |
Ottenere l'oggetto weekday_last archiviato in questo year_month_weekday_last oggetto . |
year |
Prendi l'anno. |
Membri non membri
Nome | Descrizione |
---|---|
operator+ |
Aggiungere mesi o anni. |
operator- |
Sottrae mesi o anni. |
operator== |
Determinare se due year_month_weekday_last valori sono uguali. |
operator<< |
Restituisce un oggetto year_month_weekday_last nel flusso specificato. |
Requisiti
Intestazione: <chrono>
(da C++20)
Spazio dei nomi: std::chrono
Opzione del compilatore: /std:c++latest
Costruttore
Costruisce un oggetto year_month_weekday_last
.
constexpr year_month_weekday_last(const year& y, const month& m, const weekday_last& wdl) noexcept
Parametri
m
Valore month
.
wdl
Valore weekday_last
.
y
Valore year
.
Per informazioni sulla sintassi C++20 usata per specificare le date, vedere operator/
Esempio: Creare un oggetto year_month_weekday_last
// compile using: /std:c++latest
#include <iostream>
#include <chrono>
using namespace std::chrono;
int main()
{
year_month_weekday_last ymwl{ 1997y / January / Wednesday[last] };
std::cout << ymwl << '\n';
return 0;
}
1997/Jan/Wed[last]
month
Ottenere il valore del mese.
constexpr month month() const noexcept;
Valore restituito
Valore month
.
ok
Controllare se il valore archiviato in questo year_month_weekday_last
oggetto è valido. L'oggetto , e archiviato in questo year_month_weekday_last
deve essere ok
per questa funzione per restituire true
.weekday_last
month
year
In caso contrario, restituisce false
.
constexpr bool ok() const noexcept;
Valore restituito
true
se il year_month_weekday_last
valore è valido. In caso contrario, false
.
È year_month_weekday_last
valido se , month
weekday_indexed
e year
sono tutti validi.
operator+=
Aggiungere mesi o anni a questo year_month_weekday_last
oggetto .
1) constexpr year_month_weekday_last& operator+=(const months& m) noexcept;
2) constexpr year_month_weekday_last& operator+=(const years& y) noexcept;
Parametri
m
Numero di mesi da aggiungere.
y
Numero di anni da aggiungere.
Valore restituito
*this
che riflette il risultato dell'addizione.
Esempio: operator+=
// compile using: /std:c++latest
#include <iostream>
#include <chrono>
using namespace std::chrono;
int main()
{
year_month_weekday_last ymwl{ year(1997) / January / Wednesday[last] };
std::cout << ymwl << '\n';
ymwl += months{ 1 };
ymwl += years{ 1 };
std::cout << ymwl << '\n';
return 0;
}
1997/Jan/Wed[last]
1998/Feb/Wed[last]
operator-=
Sottrae mesi o anni da questo year_month_weekday_last
oggetto .
1) constexpr year_month_weekday_last& operator-=(const months& m) noexcept;
2) constexpr year_month_weekday_last& operator-=(const years& y) noexcept;
Parametri
m
Numero di mesi da sottrarre.
y
Numero di anni da sottrarre.
Valore restituito
*this
che riflette il risultato della sottrazione.
Esempio: operator-=
// compile using: /std:c++latest
#include <iostream>
#include <chrono>
using namespace std::chrono;
int main()
{
year_month_weekday_last ymwl{ year(1997) / January / Wednesday[last] };
std::cout << ymwl << '\n';
ymwl -= months{ 1 };
ymwl -= years{ 1 };
std::cout << ymwl << '\n';
return 0;
}
1997/Jan/Wed[last]
1995/Dec/Wed[last]
operator local_days
Ottenere il numero di giorni dal system_clock
periodo (1/1/1970) a questo year_month_weekday_last
come local_days
constexpr explicit operator local_days() const noexcept;
Valore restituito
Se ok()
, restituisce un conteggio di giorni come local_days{sys_days{*this}.time_since_epoch()}
. In caso contrario, il valore restituito non è specificato.
operator sys_days
Ottenere il numero di giorni dal system_clock
periodo (1/1/1970) a questo year_month_day
come sys_days
.
constexpr operator sys_days() const noexcept;
Valore restituito
Se ok() == true
, restituisce un sys_days
oggetto che rappresenta l'ultimo weekday()
di year() / month()
(nota: /
è l'operatore date, non una divisione). In caso contrario, il valore restituito non è specificato.
weekday
Ottenere l'oggetto weekday
.
constexpr weekday weekday() const noexcept;
Valore restituito
Il weekday
.
weekday_last
Ottenere l'oggetto weekday_last
archiviato in questo year_month_weekday_last
oggetto .
constexpr weekday_indexed weekday_last() const noexcept;
Valore restituito
Il weekday_last
.
year
Ottiene il valore dell'anno.
constexpr year year() const noexcept;
Valore restituito
Valore year
.
Vedi anche
<chrono>
year
year_month
year_month_day
year_month_day_last
year_month_weekday
operator/
Riferimento file di intestazione