std::basic_iostream<CharT,Traits>:: basic_iostream
From cppreference.net
<
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)
streambuf
sb
で初期化します。基底クラスは
basic_istream
<
CharT,Traits
>
(
sb
)
および
basic_ostream
<
CharT,Traits
>
(
sb
)
として初期化されます。呼び出し後は
rdbuf
(
)
==
sb
かつ
gcount
(
)
==
0
となります。
2)
コピー構築は許可されていません。
3)
ムーブコンストラクタ: 第1基底クラス
basic_istream
を
basic_istream
<
CharT,Traits
>
(
std
::
move
(
rhs
)
)
;
としてムーブ構築し、これが仮想基底クラス
std::basic_ios
をムーブ構築して初期化する。他の基底クラス
basic_ostream
の初期化は実装定義である(例えば、
std::basic_ostream
に何もしないprotectedデフォルトコンストラクタが追加される可能性がある)。これはムーブ構築が
rhs
を2回使用できないためである。このムーブコンストラクタはprotectedである:派生ストリームクラス
std::basic_fstream
および
std::basic_stringstream
のムーブコンストラクタによって、ストリームバッファをムーブ構築して関連付ける前に呼び出される。
パラメータ
| sb | - | 初期化に使用するstreambuf |
| other | - | 初期化に使用する別のストリーム |
関連項目
|
(C++11)
|
別の
basic_iostream
をムーブ代入する
(protected member function) |