std::basic_ostream::basic_ostream

来自cppreference.com
< cpp‎ | io‎ | basic ostream

 
 
 
std::basic_ostream
全局对象
原文:
Global objects
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。
成员函数
原文:
Member functions
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。
basic_ostream::basic_ostream
格式化的输入
原文:
Formatted input
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。
未格式化的输入
原文:
Unformatted input
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。
定位
原文:
Positioning
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。
杂项
原文:
Miscellaneous
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。
会员类别
原文:
Member classes
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。
非成员函数
原文:
Non-member functions
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。
 
explicit basic_ostream( std::basic_streambuf<CharT, Traits>* sb );
(1)
protected:
basic_ostream( const basic_ostream& rhs ) = delete;
(2)
protected:
basic_ostream( basic_ostream&& rhs );
(3) (C++11 起)
1)
构建basic_ostream对象,分配初始值的基类通过调用basic_ios::init(sb).
原文:
Constructs the basic_ostream object, assigning initial values to the base class by calling basic_ios::init(sb).
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。
2)
拷贝构造函数是受保护的,将被删除。输出流是不可复制的.
原文:
The copy constructor is protected, and is deleted. Output streams are not copyable.
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。
3)
此举构造函数使用basic_ios<CharT, Traits>::move(rhs),将所有basic_ios成员,除了为rdbuf(),,从rhs*this。这一举措的构造函数是受保护的,它被称为move构造函数的的活动输出流类std::basic_ofstreamstd::basic_ostringstream,哪知道如何正确地移动相关的streambuffer的.
原文:
The move constructor uses basic_ios<CharT, Traits>::move(rhs) to move all basic_ios members, except for the rdbuf(), from rhs into *this. This move constructor is protected: it is called by the move constructors of movable output stream classes std::basic_ofstream and std::basic_ostringstream, which know how to correctly move the associated streambuffer.
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。

[编辑] 参数

sb -
作为输出序列streambuffer使用
原文:
streambuffer to use as output sequence
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。
rhs -
basic_ostream要进行初始化
原文:
basic_ostream to initialize from
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。

[编辑] 示例

#include <sstream>
#include <utility>
#include <iostream>
int main()
{
//  std::ostream myout(std::cout);              // ERROR: copy ctor is deleted
    std::ostream myout(std::cout.rdbuf());      // OK: shares buffer with cout
//  std::ostream s2(std::move(std::ostringstream() << 7.1));       // ERROR: move constructor
                                                                   // is protected
    std::ostringstream s2(std::move(std::ostringstream() << 7.1)); // OK: move ctor called
                                                                   // through the derived class
    myout << s2.str() << '\n';
}

输出:

7.1