std::chrono::operator<<(std::chrono::month)
| Определено в заголовочном файле <chrono>
|
||
template< class CharT, class Traits > std::basic_ostream<CharT, Traits>& operator<<( std::basic_ostream<CharT, Traits>& os, const std::chrono::month& m ); |
(начиная с C++20) | |
Если !m.ok(), вставляет в os unsigned(m) с последующим " is not a valid month". Иначе формирует std::basic_string<CharT> s, состоящий из сокращённого названия месяца, представленного m, определяемого с использованием локали, связанной с os, и вставляет s в os.
Эквивалентно
return os << (m.ok() ? std::format(os.getloc(), STATICALLY_WIDEN<CharT>("{:L%b}"), m) : std::format(os.getloc(), STATICALLY_WIDEN<CharT>("{} is not a valid month"), unsigned(m)));
где STATICALLY_WIDEN<CharT>("...") равно "...", если CharT равно char, и L"...", если CharT равно wchar_t.
Возвращаемое значение
os.
Примечание
Этот operator<< в первую очередь предназначен для отладки. Для управления форматированием используйте std::format.
Отчёты о дефектах
Следующие изменения поведения были применены с обратной силой к ранее опубликованным стандартам C++:
| Номер | Применён | Поведение в стандарте | Корректное поведение |
|---|---|---|---|
| WG не указан | C++20 | данная локаль использовалась по умолчанию | L необходимо для использования данной локали
|
Смотрите также
(C++20) |
сохраняет форматированное представление аргументов в новой строке (шаблон функции) |
поддержка форматирования для month (специализация шаблона класса) |