Namespaces
Variants

operator<<(std::basic_string_view)

Von de.cppreference.net
 
 
 
 
Definiert in Header <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 );
(seit C++17)

Verhält sich wie eine FormattedOutputFunction. Nachdem das Sentry-Objekt erstellt und überprüft wurde, bestimmt die Auffüllung des Ausgabeformats.

Dann speichert jedes Zeichen aus der resultierenden Sequenz seq (den Inhalt von v mit Auffüllung) in den Ausgabestrom os wie durch Aufruf von os.rdbuf()->sputn(seq, n), wobei n gleich std::max(os.width(), str.size()) ist.

Abschließend ruft os.width(0) auf, um die Auswirkungen von std::setw, falls vorhanden, rückgängig zu machen.

Ausnahmen

Kann std::ios_base::failure werfen, falls während der Ausgabe eine Exception ausgelöst wird.

Parameter

os - ein Zeichenausgabestrom
v - die einzufügende Ansicht

Rückgabewert

os

Beispiel

#include <iomanip>
#include <iostream>
#include <string_view>
int main()
{
    constexpr std::string_view s{"abc"};
    constexpr int width{5};
    // fill/left/right Eigenschaften bleiben bis zur Änderung erhalten
    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 wird nach jedem Aufruf zurückgesetzt
    std::cout << '[' << s << "]\n";
}

Ausgabe:

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

Siehe auch

führt Stream-Eingabe und -Ausgabe auf Strings durch
(Funktions-Template)