Namespaces
Variants
Actions

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

From cppreference.com
< cpp‎ | io‎ | basic istream
 
C++
 
Input/output library
 
std::basic_istream
protected:
basic_istream& operator=( const basic_istream& rhs ) = delete;
(1)
protected:
basic_istream& operator=( basic_istream&& rhs );
(2) (since C++11)
1) The copy assignment operator is protected, and is deleted. Input streams are not CopyAssignable.
2) The move assignment operator exchanges the gcount() values and all data members of the base class, except for rdbuf(), with rhs, as if by calling swap(*rhs). This move assignment operator is protected: it is only called by the move assignment operators of the derived movable input stream classes std::basic_ifstream and std::basic_istringstream, which know how to correctly move-assign the associated streambuffers.

[edit] Parameters

rhs - the basic_istream object from which to assign to *this

[edit] Example

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

Follow Lee on X/Twitter - Father, Husband, Serial builder creating AI, crypto, games & web tools. We are friends :) AI Will Come To Life!

Check out: eBank.nz (Art Generator) | Netwrck.com (AI Tools) | Text-Generator.io (AI API) | BitBank.nz (Crypto AI) | ReadingTime (Kids Reading) | RewordGame | BigMultiplayerChess | WebFiddle | How.nz | Helix AI Assistant