# std::basic_osyncstream<CharT,Traits,Allocator>::basic_osyncstream

< cpp‎ | io‎ | basic osyncstream

basic_osyncstream( streambuf_type* buf, const Allocator& a); | (1) |
explicit basic_osyncstream( streambuf_type* buf ) : basic_osyncstream( buf, Allocator() ) {} | (2) |
basic_osyncstream( std::basic_ostream<CharT, Traits>& os, const Allocator& a) : basic_osyncstream( os.rdbuf(), a) {} | (3) |
explicit basic_osyncstream( std::basic_ostream<CharT, Traits>& os ) : basic_osyncstream( os, Allocator() ) {} | (4) |
basic_osyncstream( std::basic_osyncstream&& other) noexcept; | (5) |

构造新的同步输出流。

1-4) 以提供的缓冲和分配器构造私有成员 std::basic_syncbuf ，并以指向成员 std::basic_streambuf 的指针初始化基类。
5) 移动构造函数。从 `other` 的对应子对象移动构造 std::basic_ostream 基类和 std::basic_syncbuf 成员，然后以指向新构造的底层 std::basic_syncbuf 的指针调用 `set_rdbuf` 以完成基类的初始化。此移动构造函数后， other.get_wrapped() 返回 nullptr ，而 `other` 的析构不产生输出。

### 参数

buf | - | 指向将被包装的 std::basic_streambuf 的指针
os | - | 到 std::basic_ostream 的引用，将包装其 rdbuf()
a | - | 传递给成员 std::basic_syncbuf 的构造函数的分配器
other | - | 移动来源的另一 osyncstream

### 示例

| 本节未完成 原因：暂无示例

### 参阅

(构造函数) | 构造 basic_syncbuf 对象 (`std::basic_syncbuf<CharT,Traits,Allocator>` 的公开成员函数)