Namespaces
Variants

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

From cppreference.net
< cpp ‎ | chrono ‎ | day
헤더 파일에 정의됨 <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 에 저장된 일(day) 값을 십진수로 포맷팅한 것으로, 결과가 한 자리 십진수일 경우 앞에 0을 붙입니다. 그런 다음 ! 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 에 대한 형식화 지원
(클래스 템플릿 특수화)