std::chrono::operator<<(std::chrono::day)
来自cppreference.com
在标头 <chrono> 定义
|
||
template< class CharT, class Traits > std::basic_ostream<CharT, Traits>& |
(C++20 起) | |
构成一个 std::basic_string<CharT>
s
,它由格式化为十进制数的存储于 d
的日期值组成,若结果会为单个十进制位则带前导零。然后,若 !d.ok() 则向格式化后的字符串追加 " is not a valid day"。将该字符串插入 os。
等价于
return os << (d.ok() ?
std::format(STATICALLY_WIDEN<CharT>("{:%d}"), d) :
std::format(STATICALLY_WIDEN<CharT>("{:%d} is not a valid day"), d));
其中 STATICALLY_WIDEN<CharT>("...") 当 CharT
为 char 时为 "...",而当 CharT
为 wchar_t 时为 L"..."。
返回值
os
示例
运行此代码
#include <chrono> #include <iostream> int main() { constexpr std::chrono::day d1{31}, d2{7}, d3{42}, d4{}; std::cout << d1 << '\n' << d2 << '\n' << d3 << '\n' << d4 << '\n'; }
可能的输出:
31 07 42 is not a valid day 00 is not a valid day
参阅
(C++20) |
在新字符串中存储参数的格式化表示 (函数模板) |
day 的格式化支持 (类模板特化) |