std::basic_iostream<CharT,Traits>::basic_iostream
提供: cppreference.com
<tbody>
</tbody>
explicit basic_iostream( std::basic_streambuf<CharT,Traits>* sb ); |
(1) | |
basic_iostream( const basic_iostream& other ) = delete; |
(2) | (C++11以上) |
protected: basic_iostream( basic_iostream&& other ); |
(3) | (C++11以上) |
新しいストリームオブジェクトを構築します。
1) ストリームバッファ
sb で初期化します。 基底クラスは basic_istream<CharT,Traits>(sb) および basic_ostream<CharT,Traits>(sb) として初期化されます。 呼び出し後 rdbuf() == sb および gcount() == 0 となります。2) コピー構築はできません。
3) ムーブコンストラクタ。 最初の基底クラス
basic_istream を basic_istream<CharT,Traits>(std::move(rhs)); としてムーブ構築します。 これは同様に仮想基底 std::basic_ios をムーブ構築および初期化します。 ムーブ構築は rhs を2回以上使用できないため、他の基底 basic_ostream の初期化は処理系定義です (例えば basic_ostream に何もしない protected デフォルトコンストラクタが追加されるかもしれません)。 このムーブコンストラクタは protected です。 ストリームバッファをムーブ構築し紐付ける前に派生ストリームクラス std::basic_fstream および std::basic_stringstream のムーブコンストラクタによって呼ばれます。引数
| sb | - | 初期化するためのストリームバッファ |
| other | - | 初期化するための別のストリーム |
関連項目
(C++11) |
別の basic_iostream をムーブ代入します (プロテクテッドメンバ関数) |