std::basic_istream<CharT,Traits>::swap
Von cppreference.com
< cpp | io | basic istream
| protected: void swap( basic_istream& rhs ); |
(seit C++11) | |
Ruft basic_ios::swap(rhs) auf, um alle Datenmember der Basisklasse mit Ausnahme von rdbuf() zu tauschen, und tauscht die Werte der gcount()-Zähler zwischen *this und rhs. Diese Swap-Funktion ist geschützt: sie wird von den Swap-Funktionen der austauschbaren Eingabe-Stream-Klassen std::basic_ifstream und std::basic_istringstream aufgerufen, die wissen, wie die zugehörigen Streambuffer korrekt getauscht werden.
[edit] Parameter
| rhs | - | anderes basic_istream-Objekt desselben Typs zum Tauschen |
[edit] Beispiel
Führen Sie diesen Code aus
#include <iostream> #include <sstream> #include <utility> int main() { std::istringstream s1("hello"); std::istringstream s2("bye"); s1.swap(s2); // OK, istringstream has a public swap() std::swap(s1, s2); // OK, calls s1.swap(s2) // std::cin.swap(s2); // ERROR: swap is a protected member std::cout << s1.rdbuf() << '\n'; }
Ausgabe
hello