|
|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Member functions | ||||
| Nonmember functions | ||||
operator<< | ||||
| Helper classes | ||||
(C++26) |
Defined in header <chrono> | ||
template<class CharT,class Traits> std::basic_ostream<CharT, Traits>& | (since C++20) | |
Forms astd::basic_string<CharT>s consisting of the year value stored iny formatted as a decimal number, left-padded with0 to four digits if the result would otherwise be less than four digits. Then, if!y.ok(), append" is not a valid year" to the formatted string. Inserts that string intoos.
Equivalent to
return os<<(y.ok()?
std::format(STATICALLY_WIDEN<CharT>("{:%Y}"), y):
std::format(STATICALLY_WIDEN<CharT>("{:%Y} is not a valid year"), y));
whereSTATICALLY_WIDEN<CharT>("...") is"..." ifCharT ischar, andL"..." ifCharT iswchar_t.
os
#include <chrono>#include <iostream> int main(){constexprstd::chrono::year y1{2020}, y2{-020}, y3{98304};std::cout<< y1<<'\n'<< y2<<'\n'<< y3<<'\n';}
Possible output:
2020-0016-32768 is not a valid year
(C++20) | stores formatted representation of the arguments in a new string (function template)[edit] |
formatting support foryear(class template specialization)[edit] |