std::chrono::operator<< (std::chrono::duration)
定义于头文件
<chrono> |
||
template <class CharT, class Traits, class Rep, class Period>
std::basic_ostream<CharT, Traits>& |
(C++20 起) | |
插入 d
的文本表示到 os
中,若 CharT
既非 char 亦非 wchar_t ,或若 Rep
既非浮点类型亦非转换等级大于或等于 short 的类型,则行为未定义。
表现如同它实现为
std::basic_ostringstream<CharT, Traits> s; s.flags(os.flags()); s.imbue(os.getloc()); s.precision(os.precision()); s << d.count() << units_suffix; // 见后述 return os << s.str();
换言之,流标志、本地环境和精度由流确定,但用整个输出字符串确定任何填充。
units_suffix
基于按照下表的 Period::type
确定。
Period::type |
后缀 |
std::atto | as |
std::femto | fs |
std::pico | ps |
std::nano | ns |
std::micro | µs (U+00B5) 或 us ,使用何者是实现定义的 |
std::milli | ms |
std::centi | cs |
std::deci | ds |
std::ratio<1> | s |
std::deca | das |
std::hecto | hs |
std::kilo | ks |
std::mega | Ms |
std::giga | Gs |
std::tera | Ts |
std::peta | Ps |
std::exa | Es |
std::ratio<60> | min |
std::ratio<3600> | h |
std::ratio<86400> | d |
非以上之一,且 Period::type::den == 1 | [num]s |
非以上之一 | [num/den]s |
对于表中最后二行,后缀中的 num
和 den
分别是格式化为不带前导零的 Period::type::num
和 Period::type::den
。
返回值
到流的引用,即 os
。
参阅
(C++20)
|
在新 string 中存储参数的格式化表示 (函数模板) |
std::formatter 的特化,按提供的格式格式化 duration (类模板特化) |
|
执行字符串的流输入与输出 (函数模板) |
|
(C++11)
|
转换整数或浮点值为 string (函数) |
(C++11)
|
转换整数或浮点值为 wstring (函数) |