std::chrono::year_month_day
Von cppreference.com
| Definiert in Header <chrono> |
||
| class year_month_day; |
(seit C++20) | |
Die Klasse year_month_day repräsentiert ein bestimmtes Jahr, einen Monat und einen Tag. Es ist ein feldorientierter Zeitpunkt mit einer Auflösung von std::chrono::days. std::chrono::years- und std::chrono::months-orientierte Arithmetik werden direkt unterstützt. Eine implizite Konvertierung von und zu std::chrono::sys_days ermöglicht eine effiziente std::chrono::days-orientierte Arithmetik.
year_month_day ist ein TriviallyCopyable StandardLayoutType.
Inhalt |
[bearbeiten] Memberfunktionen
konstruiert ein year_month_day(öffentliche Memberfunktion) | |
| modifiziert den Zeitpunkt um eine bestimmte Anzahl von Monaten oder Jahren (öffentliche Memberfunktion) | |
| greift auf das Jahr, den Monat und den Tag zu, die in diesem Objekt gespeichert sind (öffentliche Memberfunktion) | |
| konvertiert zu einem std::chrono::time_point (öffentliche Memberfunktion) | |
prüft, ob das year_month_day ein gültiges Datum darstellt(öffentliche Memberfunktion) |
[bearbeiten] Nicht-Memberfunktionen
| (C++20) |
vergleicht zwei year_month_day-Werte(Funktion) |
| (C++20) |
addiert oder subtrahiert einen year_month_day und eine Anzahl von Jahren oder Monaten(Funktion) |
| (C++20) |
gibt einen year_month_day in einen Stream aus(Funktionstemplate) |
| (C++20) |
parst ein year_month_day aus einem Stream gemäß dem angegebenen Format(Funktionstemplate) |
[bearbeiten] Hilfsklassen
Formatierungsunterstützung für year_month_day(Klassentemplate-Spezialisierung) | |
| Hash-Unterstützung für std::chrono::year_month_day (Klassentemplate-Spezialisierung) |
[bearbeiten] Beispiel
Führen Sie diesen Code aus
#include <chrono> #include <iostream> int main() { const std::chrono::time_point now{std::chrono::system_clock::now()}; const std::chrono::year_month_day ymd{std::chrono::floor<std::chrono::days>(now)}; std::cout << "Current Year: " << static_cast<int>(ymd.year()) << ", " "Month: " << static_cast<unsigned>(ymd.month()) << ", " "Day: " << static_cast<unsigned>(ymd.day()) << "\n" "ymd: " << ymd << '\n'; }
Mögliche Ausgabe
Current Year: 2023, Month: 9, Day: 4 ymd: 2023-09-04