std::basic_stringbuf<CharT,Traits,Allocator>:: operator=
From cppreference.net
<
cpp
|
io
|
basic stringbuf
|
std::
basic_stringbuf
&
operator
=
(
std::
basic_stringbuf
&&
rhs
)
;
|
(1) | (начиная с C++11) |
|
std::
basic_stringbuf
&
operator
=
(
const
std::
basic_stringbuf
&
rhs
)
=
delete
;
|
(2) | |
1)
Оператор перемещающего присваивания: перемещает содержимое
rhs
в
*
this
. После перемещения
*
this
содержит ассоциированную строку, режим открытия, локаль и все остальное состояние, которое ранее принадлежало
rhs
. Шесть указателей
std::basic_streambuf
в
*
this
гарантированно отличаются от соответствующих указателей в перемещенном объекте
rhs
, если они не были нулевыми.
Содержание |
Параметры
| 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
(публичная функция-член) |