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

来自cppreference.com
< cpp‎ | io‎ | basic syncbuf
 
 
 
std::basic_syncbuf
公开成员函数
basic_syncbuf::operator=
(C++20)
受保护成员函数
非成员函数
 
basic_syncbuf& operator=(basic_syncbuf&& other);

首先,调用 emit() 传输所有待决输出(和延迟冲入,若存在)到被包装流。

然后通过从 other 移动所有内容,包括临时存储、被包装的流指针、策略及所有其他状态(如互斥指针),进行移动赋值。移动后,other 不与流关联,而 other.get_wrapped() == nullptrotherstd::basic_streambuf 基类的放置区成员指针保证为空。销毁被移动的 other 将不会产生任何输出。

std::allocator_traits<Allocator>::propagate_on_container_move_assignment::valuefalse,则不更改分配器。否则,移动后 get_allocator() 等于 other.get_allocator()

参数

other - 要移动的另一 std::basic_syncbuf

返回值

*this

示例

参阅

赋值 basic_osyncstream 对象
(std::basic_osyncstream<CharT,Traits,Allocator> 的公开成员函数)
构造 basic_syncbuf 对象
(公开成员函数)
原子地传输整个内部缓冲区给被包装的 streambuf
(公开成员函数)
交换两个 basic_syncbuf 对象
(公开成员函数)