Spec-Zone.ru › C++

operator<<(std::basic_string_view)

Определено в заголовочном файле <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. После построения и проверки объекта-сторожа, определяет отступы формата вывода.

Затем сохраняет каждый символ из полученной последовательности seq (содержимое v с отступами) в выходной поток os так, как если бы вызывалась os.rdbuf()->sputn(seq, n), где n — std::max(os.width(), str.size()).

Наконец, вызывает os.width(0) для отмены эффектов std::setw, если таковые имеются.

Исключение

Может выбросить std::ios_base::failure если при выводе возникает исключение.

Параметры

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 properties are kept until changed
    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 is reset after each call
    std::cout << '[' << s << "]\n";
}

Вывод:

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

См. также

operator<<operator>>
выполняет ввод и вывод потоков для строк
(шаблон функции)

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/string/basic_string_view/operator_ltlt

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API