std::time_get<CharT,InputIt>::date_order, std::time_get<CharT,InputIt>::do_date_order
Von cppreference.com
| Definiert in Header <locale> |
||
| public: dateorder date_order() const; |
(1) | |
| protected: virtual dateorder do_date_order() const; |
(2) | |
1) Öffentliche Member-Funktion, ruft die geschützte virtuelle Member-Funktion
do_date_order der am weitesten abgeleiteten Klasse auf.2) Gibt einen Wert vom Typ std::time_base::dateorder zurück, der das Standarddatumsformat beschreibt, das von dieser Locale verwendet wird (erwartet von get_date() und erzeugt von std::strftime() mit dem Format-Spezifizierer '%x').
Die gültigen Werte (geerbt von std::time_base) sind
no_order
|
das Format enthält variable Elemente (Wochentag, Jultag usw.) oder diese Funktion ist nicht implementiert |
dmy
|
Tag, Monat, Jahr (europäische Locales) |
mdy
|
Monat, Tag, Jahr (amerikanische Locales) |
ymd
|
Jahr, Monat, Tag (asiatische Locales) |
ydm
|
Jahr, Tag, Monat (selten) |
Inhalt |
[bearbeiten] Rückgabewert
Ein Wert vom Typ dateorder.
[bearbeiten] Hinweise
Diese Funktion ist optional, sie kann in jedem Fall no_order zurückgeben.
[bearbeiten] Beispiel
Die unten stehende Ausgabe wurde mit clang (libc++) erhalten.
Führen Sie diesen Code aus
#include <iostream> #include <locale> void show_date_order() { std::time_base::dateorder d = std::use_facet<std::time_get<char>>(std::locale()).date_order(); switch (d) { case std::time_base::no_order: std::cout << "no_order\n"; break; case std::time_base::dmy: std::cout << "day, month, year\n"; break; case std::time_base::mdy: std::cout << "month, day, year\n"; break; case std::time_base::ymd: std::cout << "year, month, day\n"; break; case std::time_base::ydm: std::cout << "year, day, month\n"; break; } } int main() { std::locale::global(std::locale("en_US.utf8")); std::cout << "In U.S. locale, the default date order is: "; show_date_order(); std::locale::global(std::locale("ja_JP.utf8")); std::cout << "In Japanese locale, the default date order is: "; show_date_order(); std::locale::global(std::locale("de_DE.utf8")); std::cout << "In German locale, the default date order is: "; show_date_order(); }
Mögliche Ausgabe
In U.S. locale, the default date order is: month, day, year In Japanese locale, the default date order is: year, month, day In German locale, the default date order is: day, month, year
[bearbeiten] Siehe auch
| [virtuell] |
extrahiert Monat, Tag und Jahr aus einem Eingabestrom (virtuelle geschützte Member-Funktion) |
| definiert Datumsformatkonstanten (Klasse) |