std::basic_istream::swap
De cppreference.com
< cpp | io | basic istream
![]() |
This page has been machine-translated from the English version of the wiki using Google Translate.
The translation may contain errors and awkward wording. Hover over text to see the original version. You can help to fix errors and improve the translation. For instructions click here. |
protected: void swap(basic_istream& rhs); |
(depuis C++11) | |
Appels basic_ios::swap(rhs) d'échanger toutes les données membres de la classe de base à l'exception des rdbuf(), et échange les valeurs des compteurs
gcount()
entre *this et rhs
. Cette fonction de permutation est protégé: il est appelé par les fonctions d'échange des classes de flux d'entrée interchangeables std::basic_ifstream et std::basic_istringstream, qui savent correctement permuter les streambuffers associés .Original:
Calls basic_ios::swap(rhs) to swap all data members of the base class except for rdbuf(), and swaps the values of the
gcount()
counters between *this and rhs
. This swap function is protected: it is called by the swap functions of the swappable input stream classes std::basic_ifstream and std::basic_istringstream, which know how to correctly swap the associated streambuffers.The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
[modifier] Paramètres
rhs | - | autre objet basic_istream du même type pour échanger avec
Original: different basic_istream object of the same type to swap with The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
[modifier] Exemple
#include <sstream> #include <iostream> #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(); }
Résultat :
hello