名前空間
変種
操作

std::basic_iostream::basic_iostream

提供: cppreference.com
< cpp‎ | io‎ | basic iostream
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_istreambasic_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 をムーブ代入します
(プロテクテッドメンバ関数) [edit]