Namespaces
Variants

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

From cppreference.net
std::basic_spanbuf
Public member functions
Protected member functions
basic_spanbuf::seekoff
(C++23)
Non-member functions
protected :

pos_type seekoff ( off_type off, std:: ios_base :: seekdir dir,
std:: ios_base :: openmode which =

std:: ios_base :: in | std:: ios_base :: out ) override ;
(C++23以降)

可能であれば、次へのポインタを取得および/または配置領域の先頭、末尾、または現在位置から正確に off 文字分の位置に再配置します。

n を基盤バッファ内の CharT 要素の数(基盤バッファが存在しない場合は 0 とする)とすると、この関数は以下の場合に失敗します:

  • 再配置するgetおよび/またはput領域への次のポインタがnullであり、かつ計算された newoff (下記参照)がゼロではない場合。これは、基盤となるバッファが存在しない場合や、 * this which で要求されるモードで開かれていない場合に発生する可能性があります。または、
  • dir std::ios_base::cur であり、かつ std::ios_base::in std::ios_base::out の両方が which に設定されている場合。または、
  • 計算された newoff off_type で表現できない場合、ゼロ未満の場合、または n より大きい場合。

newoff は以下のように計算されます:

この関数は、成功時に次ポインタを取得および/または格納領域に再配置し、 pbuf + newoff に設定します。ただし、 std::ios_base::in および/または std::ios_base::out which で対応して設定されている場合に限ります。ここで pbuf は基盤となるバッファの先頭へのポインタ、または基盤となるバッファが存在しない場合はヌルポインタ値を示します。

目次

パラメータ

off - 次のポインタの相対位置を設定する
dir - 相対オフセットを適用する基準位置を定義します。以下の定数のいずれかを指定できます:
定数 説明
beg ストリームの先頭
end ストリームの末尾
cur ストリーム位置指示子の現在位置
which - 入力シーケンス、出力シーケンス、またはその両方が影響を受けるかどうかを定義します。以下の定数の1つまたは組み合わせを指定できます:
定数 説明
in 入力シーケンスに影響
out 出力シーケンスに影響

戻り値

pos_type ( newoff ) 成功時、 pos_type ( off_type ( - 1 ) ) 失敗時。

関連項目

[virtual]
入力シーケンス、出力シーケンス、またはその両方の次のポインタを相対アドレッシングを使用して再配置する
( std::basic_stringbuf<CharT,Traits,Allocator> の仮想保護メンバ関数)
[virtual]
入力シーケンス、出力シーケンス、またはその両方の次のポインタを相対アドレッシングを使用して再配置する
( std::strstreambuf の仮想保護メンバ関数)