Namespaces
Variants

std::chrono:: operator<< (std::chrono::year)

From cppreference.net
헤더 파일에 정의됨 <chrono>
template < class CharT, class Traits >

std:: basic_ostream < CharT, Traits > &

operator << ( std:: basic_ostream < CharT, Traits > & os, const std:: chrono :: year & y ) ;
(C++20부터)

std:: basic_string < CharT > s 를 형성합니다. 이 문자열은 y 에 저장된 연도 값을 10진수로 서식화하며, 결과가 네 자리 미만일 경우 왼쪽을 0 으로 채워 네 자리로 만듭니다. 그런 다음 ! y. ok ( ) 인 경우, 서식화된 문자열에 " is not a valid year" 를 추가합니다. 이 문자열을 os 에 삽입합니다.

다음과 동일함

return os << ( y. ok ( ) ?
std:: format ( STATICALLY_WIDEN < CharT > ( "{:%Y}" ) , y ) :
std:: format ( STATICALLY_WIDEN < CharT > ( "{:%Y} is not a valid year" ) , y ) ) ;

여기서 STATICALLY_WIDEN < CharT > ( "..." ) "..." 입니다, 만약 CharT char 인 경우, 그리고 L "..." 입니다, 만약 CharT wchar_t 인 경우.

반환값

os

예제

#include <chrono>
#include <iostream>
int main()
{
    constexpr std::chrono::year y1{2020}, y2{-020}, y3{98304};
    std::cout << y1 << '\n'
              << y2 << '\n'
              << y3 << '\n';
}

가능한 출력:

2020
-0016
-32768 is not a valid year

참고 항목

(C++20)
인수의 서식화된 표현을 새 문자열에 저장합니다
(함수 템플릿)
year 에 대한 서식화 지원
(클래스 템플릿 특수화)