virtual iter_type do_get_date(iter_type first, iter_type last,
ios_base& x, ios_base::iostate& st, tm *pt) const;
The virtual protected member function endeavors to match sequential elements beginning at first in the sequence
[first, last) until it has recognized a complete, nonempty date input field. If successful, it converts this field to its
equivalent value as the components tm::tm_mon, tm::tm_day, and tm::tm_year, and stores the results in
pt->tm_mon, pt->tm_day, and pt->tm_year, respectively. It returns an iterator designating the first element beyond
the date input field. Otherwise, the function sets ios_base::failbit in st. It returns an iterator designating the first
element beyond any prefix of a valid date input field. In either case, if the return value equals last, the function sets
ios_base::eofbit in st.
In this implementation, the date input field has the form MMM DD, YYYY, where:
MMM is matched by calling get_month, giving the month.DD is a sequence of decimal digits whose corresponding numeric value must be in the range [1, 31], giving the
day of the month.YYYY is matched by calling get_year, giving the year.