Classe year_month_weekday_last
Année spécifique, mois et dernier jour de semaine du mois.
Syntaxe
class year_month_weekday_last; // C++20
Notes
year_month_weekday_last
prend en charge l’arithmétique orienté années et mois, mais pas l’arithmétique orienté jours. Pour l’arithmétique orienté jours, utilisez la sys_days
conversion pour convertir en un sys_days
, qui prend en charge l’arithmétique orienté jours.
year_month_weekday_last
est un type de classe de disposition standard et copiable de manière triviale.
Membres
Nom | Description |
---|---|
Constructor |
Construisez un year_month_weekday_last avec le mois et le jour de la semaine spécifiés. |
month |
Obtenez la valeur du mois. |
ok |
Vérifiez si la valeur year_month_weekday_last est valide. |
operator+= |
Ajoutez le nombre spécifié de mois ou d’années. |
operator-= |
Soustrait le nombre spécifié de mois ou d’années. |
operator local_days |
Obtenez le nombre de jours de l’époque system_clock jusqu’à ce year_month_weekday_last que local_days . |
operator sys_days |
Obtenez le nombre de jours de l’époque system_clock jusqu’à ce year_month_weekday_last que sys_days . |
weekday |
Obtenez le jour de la semaine. |
weekday_last |
Obtenez le weekday_last fichier stocké dans ce year_month_weekday_last fichier . |
year |
Obtenez l’année. |
Non-membres
Nom | Description |
---|---|
operator+ |
Ajoutez des mois ou des années. |
operator- |
Soustraire des mois ou des années. |
operator== |
Déterminez si deux year_month_weekday_last valeurs sont égales. |
operator<< |
Sortie d’un year_month_weekday_last flux donné. |
Spécifications
En-tête : <chrono>
(depuis C++20)
Espace de noms : std::chrono
Option du compilateur : /std:c++latest
Constructeur
Construit un objet year_month_weekday_last
.
constexpr year_month_weekday_last(const year& y, const month& m, const weekday_last& wdl) noexcept
Paramètres
m
valeur month
.
wdl
valeur weekday_last
.
y
valeur year
.
Pour plus d’informations sur la syntaxe C++20 utilisée pour spécifier des dates, consultez operator/
Exemple : Créer un 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
Obtenez la valeur du mois.
constexpr month month() const noexcept;
Valeur retournée
valeur month
.
ok
Vérifiez si la valeur stockée dans ce year_month_weekday_last
champ est valide. Le year
, month
et weekday_last
stocké dans cela year_month_weekday_last
doit tous être ok
pour que cette fonction retourne true
. Sinon, retourne false
.
constexpr bool ok() const noexcept;
Valeur retournée
true
si la year_month_weekday_last
valeur est valide. Sinon, false
.
A year_month_weekday_last
est valide si le month
, weekday_indexed
et year
sont tous valides.
operator+=
Ajoutez des mois ou des années à cela year_month_weekday_last
.
1) constexpr year_month_weekday_last& operator+=(const months& m) noexcept;
2) constexpr year_month_weekday_last& operator+=(const years& y) noexcept;
Paramètres
m
Nombre de mois à ajouter.
y
Nombre d’années à ajouter.
Valeur retournée
*this
qui reflète le résultat de l’ajout.
Exemple : 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-=
Soustraire des mois ou des années de ce year_month_weekday_last
.
1) constexpr year_month_weekday_last& operator-=(const months& m) noexcept;
2) constexpr year_month_weekday_last& operator-=(const years& y) noexcept;
Paramètres
m
Nombre de mois à soustraire.
y
Nombre d’années à soustraire.
Valeur retournée
*this
qui reflète le résultat de la soustraction.
Exemple : 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
Obtenez le nombre de jours de l’époque system_clock
(1/1/1970) à ceci year_month_weekday_last
comme local_days
constexpr explicit operator local_days() const noexcept;
Valeur retournée
Si ok()
, retourne un nombre de jours sous la forme local_days{sys_days{*this}.time_since_epoch()}
. Sinon, la valeur retournée n’est pas spécifiée.
operator sys_days
Obtenez le nombre de jours de l’époque system_clock
(1/1/1970) à ceci year_month_day
comme sys_days
.
constexpr operator sys_days() const noexcept;
Valeur retournée
Si ok() == true
, retourne un sys_days
qui représente le dernier weekday()
de year() / month()
(remarque : il /
s’agit de l’opérateur date, et non d’une division). Sinon, la valeur retournée n’est pas spécifiée.
weekday
Obtenez le weekday
.
constexpr weekday weekday() const noexcept;
Valeur retournée
Le weekday
.
weekday_last
Obtenez le weekday_last
fichier stocké dans ce year_month_weekday_last
fichier .
constexpr weekday_indexed weekday_last() const noexcept;
Valeur retournée
Le weekday_last
.
year
Obtenez la valeur de l’année.
constexpr year year() const noexcept;
Valeur retournée
valeur year
.
Voir aussi
<chrono>
year
year_month
year_month_day
year_month_day_last
year_month_weekday
operator/
Informations de référence sur les fichiers d’en-tête