std::chrono:: operator<< (std::chrono::day)
|
ヘッダーで定義
<chrono>
|
||
|
template
<
class
CharT,
class
Traits
>
std::
basic_ostream
<
CharT, Traits
>
&
|
(C++20以降) | |
std::
basic_string
<
CharT
>
s
を形成し、その中に
d
に格納された日付の値を10進数としてフォーマットする。結果が1桁の10進数になる場合は先頭にゼロを付加する。その後、
!
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
のフォーマットサポート
(クラステンプレートの特殊化) |