std::chrono::operator<< (std::chrono::duration)
來自 cppreference.com
定義於標頭檔案 <chrono> |
||
template< class CharT, |
(C++20 起) | |
將 d 的文字表示插入到 os 中。
其行為如同以下實現:
std::basic_ostringstream<CharT, Traits> s; s.flags(os.flags()); s.imbue(os.getloc()); s.precision(os.precision()); s << d.count() << units_suffix; // see below 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。
[編輯] 示例
此示例顯示了在給定持續時間時 std::chrono::operator<<
的輸出
執行此程式碼
#include <chrono> #include <iostream> using namespace std::chrono_literals; int main() { constexpr auto duration = 123ms; std::cout << duration << '\n'; }
輸出
123ms
[編輯] 參閱
(C++20) |
將引數的格式化表示儲存在新字串中 (函式模板) |
duration 的格式化支援(類模板特化) | |
對字串執行流輸入和輸出 (函式模板) | |
(C++11) |
將整數或浮點值轉換為 string (函式) |
(C++11) |
將整數或浮點值轉換為 wstring (函式) |