Namespaces
Variants

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

From cppreference.net
< cpp ‎ | chrono ‎ | day
Definiert im Header <chrono>
template < class CharT, class Traits >

std:: basic_ostream < CharT, Traits > &

operator << ( std:: basic_ostream < CharT, Traits > & os, const std:: chrono :: day & d ) ;
(seit C++20)

Bildet einen std:: basic_string < CharT > s , der den in d gespeicherten Tageswert als Dezimalzahl formatiert, mit einer führenden Null, falls das Ergebnis andernfalls eine einstellige Dezimalzahl wäre. Falls ! d. ok ( ) , wird " is not a valid day" an den formatierten String angehängt. Fügt diesen String in os ein.

Entspricht

return os << ( d. ok ( ) ?
std:: format ( STATICALLY_WIDEN < CharT > ( "{:%d}" ) , d ) :
std:: format ( STATICALLY_WIDEN < CharT > ( "{:%d} ist kein gültiger Tag" ) , d ) ) ;

wobei STATICALLY_WIDEN < CharT > ( "..." ) gleich "..." ist, wenn CharT gleich char ist, und L "..." wenn CharT gleich wchar_t ist.

Rückgabewert

os

Beispiel

#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';
}

Mögliche Ausgabe:

31
07
42 is not a valid day
00 is not a valid day

Siehe auch

(C++20)
speichert die formatierte Darstellung der Argumente in einer neuen Zeichenkette
(Funktions-Template)
Formatierungsunterstützung für day
(Klassen-Template-Spezialisierung)