Namespaces
Variants

std::basic_stringbuf<CharT,Traits,Allocator>:: operator=

From cppreference.net
(1) (начиная с C++11)
std:: basic_stringbuf & operator = ( const std:: basic_stringbuf & rhs ) = delete ;
(2)
1) Оператор перемещающего присваивания: перемещает содержимое rhs в * this . После перемещения * this содержит ассоциированную строку, режим открытия, локаль и все остальное состояние, которое ранее принадлежало rhs . Шесть указателей std::basic_streambuf в * this гарантированно отличаются от соответствующих указателей в перемещенном объекте rhs , если они не были нулевыми.
2) Оператор копирующего присваивания удален; basic_stringbuf не является CopyAssignable .

Содержание

Параметры

rhs - another basic_stringbuf который будет перемещен

Возвращаемое значение

* this

Пример

#include <iostream>
#include <sstream>
#include <string>
int main()
{
    std::istringstream one("one");
    std::ostringstream two("two");
    std::cout << "Before move, one = \"" << one.str() << '"'
              << " two = \"" << two.str() << "\"\n";
    *one.rdbuf() = std::move(*two.rdbuf());
    std::cout << "After move, one = \"" << one.str() << '"'
              << " two = \"" << two.str() << "\"\n";
}

Вывод:

Before move, one = "one" two = "two"
After move, one = "two" two = ""

Смотрите также

создает объект basic_stringbuf
(публичная функция-член)