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
Diesen Code ausführen
#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) |