Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
std::basic_istream::swap(3)   C++ Standard Libary  std::basic_istream::swap(3)

NAME
       std::basic_istream::swap	- std::basic_istream::swap

Synopsis
	  protected:			  (since C++11)
	  void swap(basic_istream& rhs);

	  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::ba-
       sic_istringstream, which	know
	  how to correctly swap	the associated streambuffers.

Parameters
	  rhs -	different basic_istream	object of the same type	to swap	with

Example
       // Run this code

	#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();
	}

Output:
	hello

http://cppreference.com		  2022.07.31	   std::basic_istream::swap(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=std::istream::swap&sektion=3&manpath=FreeBSD+Ports+15.0>

home | help