class template
<locale>
std::time_get
template <class charT, class InputIterator = istreambuf_iterator<charT> > class time_get;
Facet to parse dates and times
The time_get standard facet parses sequences of characters to read date and time information and stores it into a tm structure.
The time_get class template has a protected destructor: Programs shall only construct objects of derived classes, or use those installed in locale objects (through use_facet).
All standard locale objects support at least the following facet instantiations of the time_get class template (as part of the time category):
facets in locale objects | notes |
time_get<char> | narrow characters, for use with istream iterators |
time_get<wchar_t> | wide characters, for use with wistream iterators |
Template parameters
- charT
- Character type: the type of the characters in the sequence to interpret.
Aliased as member char_type.
- InputIterator
- Input iterator type that points to the elements in the character sequence to interpret.
Defaults to istreambuf_iterator, which is an iterator that can be implicitly converted from basic_istream objects.
Aliased as member iter_type.
Member types
member type | definition | description |
char_type | The first template parameter (charT) | Character type |
iter_type | The second template parameter (InputIterator) | Iterator type.
Defaults to istreambuf_iterator<charT> |
The class also inherits time_base::dateorder, which is used as the return type for member date_order.
Member constants
The following member constants are inherited from time_base (as labels of enum
type time_base::dateorder); They are used as return values by certain member functions.
member constant | type | value | description |
no_order | time_base::dateorder | 0 | No specific order, or format contains variable components other than day, month and year. |
dmy | time_base::dateorder | 1 | day, month, year |
mdy | time_base::dateorder | 2 | month, day, year |
ymd | time_base::dateorder | 3 | year, month, day |
ydm | time_base::dateorder | 4 | year, day, month |
The class also contains a public static constant of type locale::id, that uniquely identifies facets with time_get semantics.
Public member functions
- (constructor)
- time_get constructor (public member function)
- date_order
- Return date order (public member function)
- get_time
- Read time (public member function)
- get_date
- Read date (public member function)
- get_weekday
- Read weekday (public member function)
- get_monthname
- Read month name (public member function)
- get_year
- Read year (public member function)
- get
- Read time and date (public member function)
Virtual protected member functions
The class defines the virtual protected members which implement the behavior by default of their respective public member functions:
- do_date_order
- Return date order [virtual] (protected virtual member function)
- do_get_time
- Read time [virtual] (protected virtual member function)
- do_get_date
- Read date [virtual] (protected virtual member function)
- do_get_weekday
- Read weekday [virtual] (protected virtual member function)
- do_get_monthname
- Read month name [virtual] (protected virtual member function)
- do_get_year
- Read year [virtual] (protected virtual member function)
- do_get
- Read time and date [virtual] (protected virtual member function)
Along with the class destructor:
- (destructor)
- time_get destructor (protected member function)
Specializations
At least the following specializations and partial specializations of this template are provided in all library implementations:
specialization |
time_get<char> |
time_get<wchar_t> |
template <class InputIterator> time_get<char,InputIterator> |
template <class InputIterator> time_get<wchar_t,InputIterator> |
Where InputIterator shall be a type that satisfies the requirements of an input iterator able to iterate over elements of the specified character type.