受保護的虛成員函式
<streambuf> <iostream>

std::basic_streambuf::seekoff

pos_type seekoff (off_type off, ios_base::seekdir way,                  ios_base::openmode which = ios_base::in | ios_base::out);
將內部位置指標設定到相對位置
由公共成員函式 pubseekoff 呼叫,以針對派生類以特定方式修改受控序列的一個或多個流位置的虛擬函式。

它在 basic_streambuf 中的預設行為是執行任何操作並返回 -1,但派生類應覆蓋此行為以適當地修改內部指標:basic_filebufbasic_stringbuf 都覆蓋此虛擬成員函式,以將由 which 指定的內部指標設定為相對於 way 指定方向的偏移量 off

引數

off
偏移量,相對於 way 引數。
成員型別 off_type 由 *字元特性* 確定:通常,它是已簽名整型 streamoff 的別名。
way
型別為 ios_base::seekdir 的物件。它可以接受以下任何常量值
偏移量相對於...
ios_base::beg流緩衝區的開始
ios_base::cur流緩衝區中的當前位置
ios_base::end流緩衝區的末尾
which
通常用於確定要修改的 *受控序列* 的哪個位置:*輸入序列*、*輸出序列* 或兩者。它是一個型別為 ios_base::openmode 的物件,對於此函式,它可以接受以下重要常量值的任何組合
受影響的位置指標
ios_base::in修改 *受控輸入序列* 中的當前位置
ios_base::out修改 *受控輸出序列* 中的當前位置

返回值

返回 pos_type(off_type(-1))
成員型別 pos_type 由 *字元特性* 確定:通常,它是一個 fpos 型別(例如 streampos),可以與整數型別相互轉換。

資料競爭

不引入資料競爭,但派生類中重寫的版本可能會。

異常安全

無異常保證:此預設定義從不丟擲異常。

另見