Namespaces
Variants

std::basic_iostream<CharT,Traits>:: basic_iostream

From cppreference.net
std::basic_iostream
Member functions
basic_iostream::basic_iostream
Protected member functions
explicit basic_iostream ( std:: basic_streambuf < CharT,Traits > * sb ) ;
(1)
basic_iostream ( const basic_iostream & other ) = delete ;
(2) (自 C++11 起)
protected :
basic_iostream ( basic_iostream && other ) ;
(3) (自 C++11 起)

构造新的流对象。

1) 使用流缓冲区 sb 进行初始化。基类初始化为 basic_istream < CharT,Traits > ( sb ) basic_ostream < CharT,Traits > ( sb ) 。调用后 rdbuf ( ) == sb gcount ( ) == 0
2) 不允许复制构造。
3) 移动构造函数:将第一个基类 basic_istream 移动构造为 basic_istream < CharT,Traits > ( std :: move ( rhs ) ) ; ,这又会移动构造并初始化虚基类 std::basic_ios 。另一个基类 basic_ostream 的初始化由实现定义(例如可能在 std::basic_ostream 中添加一个无操作的受保护默认构造函数),因为移动构造不能两次使用 rhs 。此移动构造函数为受保护成员:它由派生流类 std::basic_fstream std::basic_stringstream 的移动构造函数在它们移动构造并关联流缓冲区之前调用。

参数

sb - 用于初始化的 streambuf
other - 用于初始化的另一个流

参见

(C++11)
移动赋值另一个 basic_iostream
(受保护成员函数)