Namespaces
Variants

std::basic_spanbuf<CharT,Traits>:: basic_spanbuf

From cppreference.net
std::basic_spanbuf
Public member functions
basic_spanbuf::basic_spanbuf
(C++23)
Protected member functions
Non-member functions
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以降)
(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 が基盤となるバッファを保持するかどうかは実装定義である。

目次

パラメータ

buf - 基礎バッファを参照する std::span
rhs - 別の basic_spanbuf
which - ストリームのオープンモードを指定する。ビットマスク型であり、以下の定数が定義されている:
定数 説明
app 各書き込み前にストリームの終端へシーク
binary バイナリモード でオープン
in 読み取り用にオープン
out 書き込み用にオープン
trunc オープン時にストリームの内容を破棄
ate オープン直後にストリームの終端へシーク
noreplace (C++23) 排他モードでオープン

注記

これらのコンストラクタは通常、 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> の 公開メンバ関数)