std::basic_osyncstream<CharT,Traits,Allocator>::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) |
Constructs new synchronized output stream.
1-4) constructs the private member std::basic_syncbuf using the buffer and the allocator provided, and initializes the base class with a pointer to the member std::basic_streambuf.
5) Move constructor. Move-constructs the std::basic_ostream base and the std::basic_syncbuf member from the corresponding subobjects of
other, then calls set_rdbuf with the pointer to the newly-constructed underlying std::basic_syncbuf to complete the initialization of the base. After this move constructor, other.get_wrapped() returns nullptr and destruction of other produces no output.Parameters
| buf | - | pointer to the std::basic_streambuf that will be wrapped |
| os | - | reference to a std::basic_ostream, whose rdbuf() will be wrapped |
| a | - | the allocator to pass to the constructor of the member std::basic_syncbuf |
| other | - | another osyncstream to move from |
Example
See also
| constructs a basic_syncbuf object (public member function of std::basic_syncbuf<CharT,Traits,Allocator>) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
http://en.cppreference.com/w/cpp/io/basic_osyncstream/basic_osyncstream