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::to_string(d.count()) (若 CharT
为 char )或 std::to_wstring(d.count()) (若 CharT
为 wchar_t ) 中的字符组成的 std::basic_string<CharT, Traits> str
。然后将 str
后附按照下表基于 Period::type
的后缀,并用 os << str;
插入 str
到流。
Period::type
|
后缀 |
std::atto | as
|
std::femto | fs
|
std::pico | ps
|
std::nano | ns
|
std::micro | µs (U+00B5)
|
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
|
对于 std::micro ,若字符 µ (U+00B5) 不能以 CharT
所用的编码表示,则替而使用后缀 "us
" 。
对于表中最后二行,后缀中的 num
和 den
分别是格式化为不带前导零的 Period::type::num
和 Period::type::den
。
返回值
到流的引用,即 os
。
注意
用 std::to_string/std::to_wstring 的规则格式化 d.count()
。特别是,若 Rep
为浮点类型,则始终以小数点后 6 位十进制数的格式格式化,而若 d.count()
很小则结果字符串的有效位数可能为零。
参阅
(C++20) |
按照提供的格式输出 duration 到流 (函数模板) |
执行字符串的流输入与输出 (函数模板) | |
(C++11) |
转换整数或浮点值为 string (函数) |
(C++11) |
转换整数或浮点值为 wstring (函数) |