OutputByteStreamOwn::operator=
Версия от 21:22, 30 мая 2019; Андрей Чусов (обсуждение | вклад) (Новая страница: «{{function_begin|OutputByteStreamOwn& operator{{=}}(const OutputByteStreamOwn&) {{=}} delete; OutputByteStreamOwn& operator{{=}}(OutputByteStreamOwn&& right);|{{O…»)
OutputByteStreamOwn& operator=(const OutputByteStreamOwn&) = delete;
OutputByteStreamOwn& operator=(OutputByteStreamOwn&& right);
Операторы присваивания с перемещением.
- Удаленный оператор присваивания с копированием.
- Оператор присваивания с перемещением. Деассоциирует текущий экземпляр адаптера OutputByteStreamOwn от владеемого объекта, если это владение имело место до вызова, затем передает объект, ассоциированный с right, и его владение текущему экземпляру адаптера и диассоциирует right от объекта.
right | Иной экземпляр адаптера, состояние которого передается текущему экземпляру в результате присваивания с перемещением. После вызова right.get_interface() == nullptr . |
Для адаптеров x и y типа OutputByteStreamOwn в точке доступа к методу OutputByteStreamRef::reset_interface вызов
x = std::move(y);
эквивалентен вызовам
if (&x != &y)
x.reset_interface(y.release_ownership());