Lưu ý
Cần có ủy quyền mới truy nhập được vào trang này. Bạn có thể thử đăng nhập hoặc thay đổi thư mục.
Cần có ủy quyền mới truy nhập được vào trang này. Bạn có thể thử thay đổi thư mục.
A stream class that can do both input and output.
Syntax
template <class Elem, class Tr = char_traits<Elem>>
class basic_iostream : public basic_istream<Elem, Tr>,
public basic_ostream<Elem, Tr>
{
public:
explicit basic_iostream(basic_streambuf<Elem, Tr>* strbuf);
virtual ~basic_iostream();
};
Remarks
The class template describes an object that controls insertions, through its base class basic_ostream< Elem, Tr>, and extractions, through its base class basic_istream< Elem, Tr>. The two objects share a common virtual base class basic_ios< Elem, Tr>. They also manage a common stream buffer, with elements of type Elem, whose character traits are determined by the class Tr. The constructor initializes its base classes through basic_istream( strbuf) and basic_ostream( strbuf).
Constructors
| Constructor | Description |
|---|---|
| basic_iostream | Create a basic_iostream object. |
Member functions
| Member function | Description |
|---|---|
| swap | Exchanges the contents of the provided basic_iostream object for the contents of this object. |
Operators
| Operator | Description |
|---|---|
| operator= | Assigns the value of a specified basic_iostream object to this object. This is a move assignment involving an rvalue that does not leave a copy behind. |
Requirements
Header: <istream>
Namespace: std
basic_iostream::basic_iostream
Create a basic_iostream object.
explicit basic_iostream(basic_streambuf<Elem, Tr>* strbuf);
basic_iostream(basic_iostream&& right);
basic_iostream();
Parameters
strbuf
An existing basic_streambuf object.
right
An existing basic_iostream object that is used to construct a new basic_iostream.
Remarks
The first constructor initializes the base objects by way of basic_istream(strbuf) and basic_ostream(strbuf).
The second constructor initializes the base objects by calling move(right).
basic_iostream::operator=
Assign the value of a specified basic_iostream object to this object. This is a move assignment involving an rvalue that does not leave a copy behind.
basic_iostream& operator=(basic_iostream&& right);
Parameters
right
An rvalue reference to a basic_iostream object to assign from.
Remarks
The member operator calls swap(right).
basic_iostream::swap
Exchanges the contents of the provided basic_iostream object for the contents of this object.
void swap(basic_iostream& right);
Parameters
right
The basic_iostream object to swap.
Remarks
The member function calls swap(right).
See also
Thread Safety in the C++ Standard Library
iostream Programming
iostreams Conventions