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
отформатированного как десятичное число с ведущим нулем, если результат иначе был бы однозначным десятичным числом. Затем, если
!
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
, и
L
"..."
если
CharT
это
wchar_t
.
Возвращаемое значение
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
(специализация шаблона класса) |