std::time_get::date_order, std::time_get::do_date_order
From cppreference.com
                    
                                        
                    
                    
                                                            
                    |   Defined in header  
<locale>
  | 
||
|   public: 
dateorder date_order() const;  | 
(1) | |
|   protected: 
virtual dateorder do_date_order() const;  | 
(2) | |
1) Public member function, calls the protected virtual member function 
do_date_order of the most derived class.
2) Returns a value of type std::time_base::dateorder, which describes the default date format used by this locale (expected by get_date() and produced by std::strftime() with format specifier '%x').
The valid values (inherited from std::time_base) are:
  no_order
 | 
the format contains variable items (week day, Julian day, etc), or this function is not implemented | 
  dmy
 | 
day, month, year (European locales) | 
  mdy
 | 
month, day, year (American locales) | 
  ymd
 | 
year, month, day (Asian locales) | 
  ydm
 | 
year, day, month (rare) | 
Contents | 
[edit] Parameters
(none)
[edit] Return value
A value of type dateorder
[edit] Notes
This function is optional, it may return no_order in every case.
[edit] Example
Run this code
#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(); }
Output:
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
[edit] See also
|    [virtual] 
 | 
   extracts month, day, and year from input stream  (virtual protected member function)  | 
|    defines date format constants   (class)  |