std::basic_spanbuf<CharT,Traits>:: basic_spanbuf
From cppreference.net
<
cpp
|
io
|
basic spanbuf
|
basic_spanbuf
(
)
:
basic_spanbuf
(
std::
ios_base
::
in
|
std::
ios_base
::
out
)
{
}
|
(1) | (C++23以降) |
|
explicit
basic_spanbuf
(
std::
ios_base
::
openmode
which
)
: basic_spanbuf ( std:: span < CharT > { } , which ) { } |
(2) | (C++23以降) |
|
explicit
basic_spanbuf
(
std::
span
<
CharT
>
buf,
std::
ios_base
::
openmode
which
=
std:: ios_base :: in | std:: ios_base :: out ) ; |
(3) | (C++23以降) |
|
basic_spanbuf
(
const
basic_spanbuf
&
)
=
delete
;
|
(4) | (C++23以降) |
|
basic_spanbuf
(
basic_spanbuf
&&
rhs
)
;
|
(5) | (C++23以降) |
1)
デフォルトコンストラクタ。基盤となるバッファを持たず、入力と出力の両方に対して開かれた
basic_spanbuf
を作成します。ゲット領域とプット領域へのポインタはヌルポインタ値に設定されます。
2)
(1)
と同様ですが、
basic_spanbuf
が
which
で指定されたモードで開かれる点が異なります。
3)
basic_spanbuf
を作成し、
buf
によって参照される基盤となるバッファを管理します(
buf
が空の場合は基盤となるバッファを持ちません)。また、
which
で指定されたモードで開かれます。取得領域と格納領域へのポインタは、以下の表に従って設定されます。表に記載されていない場合はヌルポインタ値に設定されます:
|
オープンモードで設定されたビット
(取得領域へのポインタに影響) |
設定後の戻り値 | ||
|---|---|---|---|
| eback() | gptr() | egptr() | |
| std:: ios_base :: in | s. data ( ) | s. data ( ) | s. data ( ) + s. size ( ) |
|
オープンモードで設定されたビット
(格納領域へのポインタに影響) |
設定後の戻り値 | ||
| pbase() | pptr() | epptr() | |
| std:: ios_base :: out && ! std:: ios_base :: ate | s. data ( ) | s. data ( ) | s. data ( ) + s. size ( ) |
| std:: ios_base :: out && std:: ios_base :: ate | s. data ( ) | s. data ( ) + s. size ( ) | s. data ( ) + s. size ( ) |
4)
コピーコンストラクタは削除されています。
basic_spanbuf
はコピーできません。
5)
ムーブコンストラクタ。
std::basic_streambuf
基底サブオブジェクトを
rhs
のものからムーブ構築する。get領域とput領域へのポインタ、オープンモード、および基盤となるバッファ(存在する場合)は、構築前の
rhs
のものと同一である。
ムーブ構築後も rhs が基盤となるバッファを保持するかどうかは実装定義である。
ムーブ構築後も rhs が基盤となるバッファを保持するかどうかは実装定義である。
目次 |
パラメータ
| buf | - | 基礎バッファを参照する std::span | ||||||||||||||||
| rhs | - |
別の
basic_spanbuf
|
||||||||||||||||
| which | - |
ストリームのオープンモードを指定する。ビットマスク型であり、以下の定数が定義されている:
|
注記
これらのコンストラクタは通常、 std::basic_ispanstream 、 std::basic_ospanstream 、および std::basic_spanstream のコンストラクタによって呼び出されます。
例
|
このセクションは不完全です
理由: 例がありません |
関連項目
basic_ispanstream
を構築する
(
std::basic_ispanstream<CharT,Traits>
の
公開メンバ関数)
|
|
basic_ospanstream
を構築する
(
std::basic_ospanstream<CharT,Traits>
の
公開メンバ関数)
|
|
basic_spanstream
を構築する
(
std::basic_spanstream<CharT,Traits>
の
公開メンバ関数)
|