30 Input/output library [input.output]

30.9 File-based streams [file.streams]

30.9.3 Class template basic_­ifstream [ifstream]

30.9.3.2 Assign and swap [ifstream.assign]

basic_ifstream& operator=(basic_ifstream&& rhs);

Effects: Move назначает базу и членов *this из базы и членов-корреспондентов rhs.

Returns: *this.

void swap(basic_ifstream& rhs);

Effects: Меняет состояние *this и rhs по вызову basic_­istream<charT, traits>​::​swap(rhs) и sb.swap(rhs.sb).

template <class charT, class traits> void swap(basic_ifstream<charT, traits>& x, basic_ifstream<charT, traits>& y);

Effects: Как будто мимо x.swap(y).