命名空间
变体
操作

std::basic_istream<CharT,Traits>::operator=

来自 cppreference.cn
< cpp‎ | io‎ | basic istream
 
 
 
 
protected:
basic_istream& operator=( const basic_istream& rhs ) = delete;
(1)
protected:
basic_istream& operator=( basic_istream&& rhs );
(2) (since C++11)
1) 复制赋值运算符是受保护的,且被删除。输入流不可复制赋值。
2) 移动赋值运算符交换 gcount() 的值和基类的所有数据成员,除了 rdbuf(),与 rhs 交换,如同调用 swap(*rhs)。此移动赋值运算符是受保护的:它仅由派生的可移动输入流类 std::basic_ifstreamstd::basic_istringstream 的移动赋值运算符调用,这些类知道如何正确地移动赋值关联的流缓冲区。

[edit] 参数

rhs - 要从中赋值给 *this 的 basic_istream 对象

[edit] 示例

#include <iostream>
#include <sstream>
 
int main()
{
    std::istringstream s1;
    s1 = std::istringstream("test"); // OK
 
//  std::cin = std::istringstream("test"); // ERROR: 'operator=' is protected
}