std::basic_ios::swap
From cppreference.com
                    
                                        
                    
                    
                                                            
                    |   protected: void swap( basic_ios& other );  | 
(since C++11) | |
Exchanges the states of *this and other, except for the associated rdbuf objects. rdbuf() and other.rdbuf() returns the same values as before the call.
This swap function is protected: it is called by the swap member functions of the derived stream classes such as std::basic_ofstream or std::basic_istringstream, which know how to correctly swap the associated streambuffers.
Contents | 
[edit] Parameters
| other | - |   the basic_ios object to exchange the state with
 | 
[edit] Return value
(none)
[edit] Exceptions
[edit] See also
   moves from another std::basic_ios except for rdbuf (protected member function)  | |