std::chrono::operator<< (std::chrono::duration)
来自cppreference.com
                    
                                        
                    
                    
                                                            
                    |   定义于头文件  <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 (函数)  |