Namespaces
Variants

operator<< (std::basic_string_view)

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

std:: basic_ostream < CharT, Traits > &
operator << ( std:: basic_ostream < CharT, Traits > & os,

std:: basic_string_view < CharT, Traits > v ) ;
(C++17부터)

FormattedOutputFunction 처럼 동작합니다. sentry 객체를 구성하고 검사한 후, 출력 형식 패딩을 결정합니다 .

그런 다음 결과 시퀀스 seq (패딩이 추가된 v 의 내용)에서 각 문자를 출력 스트림 os 에 저장합니다. 이는 마치 os. rdbuf ( ) - > sputn ( seq, n ) 를 호출하는 것과 같으며, 여기서 n std:: max ( os. width ( ) , str. size ( ) ) 입니다.

마지막으로, os. width ( 0 ) 를 호출하여 std::setw 의 효과를 취소합니다(존재하는 경우).

목차

예외

출력 중 예외가 발생하면 std::ios_base::failure 를 throw할 수 있습니다.

매개변수

os - 문자 출력 스트림
v - 삽입될 뷰

반환값

os

예제

#include <iomanip>
#include <iostream>
#include <string_view>
int main()
{
    constexpr std::string_view s{"abc"};
    constexpr int width{5};
    // fill/left/right 속성은 변경될 때까지 유지됨
    std::cout << std::setfill('-');
    std::cout << std::left;
    std::cout << '[' << std::setw(width) << s << "]\n";
    std::cout << '[' << std::setw(width) << s << "]\n";
    std::cout << std::right;
    std::cout << '[' << std::setw(width) << s << "]\n";
    // width는 각 호출 후에 재설정됨
    std::cout << '[' << s << "]\n";
}

출력:

[abc--]
[abc--]
[--abc]
[abc]

참고 항목

문자열에 대한 스트림 입력 및 출력 수행
(함수 템플릿)