home | help
std::basic_...sic_iostream(3)  C++ Standard Libary std::basic_...sic_iostream(3)

NAME
     std::basic_iostream::basic_iostream - std::basic_iostream::basic_iostream

Synopsis
	explicit basic_iostream( std::basic_streambuf<CharT,Traits>* sb ); (1)
	basic_iostream(  const	basic_iostream& other ) = delete;	     (2)
     (since C++11)
	protected:							     (3)
     (since C++11)
	basic_iostream( basic_iostream&& other );

	Constructs new stream object.

	1) Initializes with streambuf sb. The base classes are initialized as
	basic_istream<CharT,Traits>(sb) and basic_ostream<CharT,Traits>(sb). Af-
     ter the call
	rdbuf() == sb and gcount() == 0.
	2) Copy construction is not allowed.
	3)  Move constructor: move-constructs the first base class basic_istream
     as
	basic_istream<CharT,Traits>(std::move(rhs));, which  in  turn  move-con-
     structs and
	initializes  the  virtual base std::basic_ios. The initialization of the
     other base,
	basic_ostream, is implementation-defined (e.g., a protected default con-
     structor may
	be added to std::basic_ostream, which does  nothing)  because  move-con-
     struction cannot
	use  rhs  twice. This move constructor is protected: it is called by the
     move
	constructors of the derived stream classes std::basic_fstream and
	std::basic_stringstream before they  move-construct  and  associate  the
     stream buffer.

Parameters
	sb    - streambuf to initialize with
	other - another stream to initialize with

See also
	operator= move-assigns another basic_iostream
	(C++11)   (protected member function)

http://cppreference.com 	   2024.06.10	   std::basic_...sic_iostream(3)

home | help