Пространства имён
Варианты
Действия

std::chrono::operator<<(std::chrono::day)

Материал из cppreference.com
< cpp | chrono | day
 
 
Библиотека утилит
Языковая поддержка
Поддержка типов (базовые типы, RTTI)
Макросы тестирования функциональности библиотеки (C++20)    
Управление динамической памятью
Программные утилиты
Поддержка сопрограмм (C++20)
Вариативные функции
Трёхстороннее сравнение (C++20)
(C++20)
(C++20)(C++20)(C++20)(C++20)(C++20)(C++20)
Общие утилиты
Дата и время
Функциональные объекты
Библиотека форматирования (C++20)
(C++11)
Операторы отношения (устарело в C++20)
Целочисленные функции сравнения
(C++20)(C++20)(C++20)    
(C++20)
Операции обмена и типа
(C++14)
(C++11)
(C++11)
(C++11)
(C++17)
Общие лексические типы
(C++11)
(C++17)
(C++17)
(C++17)
(C++11)
(C++17)
(C++23)
Элементарные преобразования строк
(C++17)
(C++17)
 
 
 
<tbody> </tbody>
Определено в заголовочном файле <chrono>
template< class CharT, class Traits > std::basic_ostream<CharT, Traits>& operator<<( std::basic_ostream<CharT, Traits>& os, const std::chrono::day& d );
(начиная с 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
(специализация шаблона класса) [править]