basic_stringbuf::seekoff
受保護的虛擬成員函式嘗試變更控制流程的目前位置。
virtual pos_type seekoff(
off_type _Off,
ios_base::seekdir _Way,
ios_base::openmode _Mode = ios_base::in | ios_base::out
);
參數
_Off
要尋找的位置是相對於 _Way。 如需詳細資訊,請參閱 basic_stringbuf::off_type。_Way
位移作業的開始。 如需可能的值,請參閱 ios_base::seekdir。_Mode
以指標位置指定模式。 預設值為可讓您修改和讀取/寫入位置。 如需詳細資訊,請參閱 ios_base::openmode。
傳回值
傳回新位置或一個無效的資料流位置。
備註
如需類別 **basic_stringbuf<Elem, Tr, Alloc>**物件,資料流位置完全包含資料流位移。 零位移指定受控制序列的第一個項目。
判斷新位置如下:
如果 _Way == ios_base::beg,新位置在資料流的開頭加上 _Off。
如果 _Way == ios_base::cur,新位置是現行資料流位置加上 _Off。
如果 _Way == ios_base::end,新位置在資料流結尾加上 _Off。
如果 _Mode & ios_base::in 為非零值 (Nonzero),則函式修改下一個位置的輸入緩衝區。 如果 _Mode & ios_base::out 為非零值 (Nonzero),則函式會在輸出緩衝區中的下一個位置。 若要讓能夠影響的資料流,其緩衝區必須存在。 若要成功地執行的作業,將產生的資料流位置必須位於受控制序列之間。 如果函式會同時影響資料流位置, _Way 必須是 ios_base::beg 或 ios_base::end 和兩個資料流定位在同一個項目。 則為 (或者,如果兩個位置不受影響),將作業失敗。
如果此函式位在修改其中一個或兩個後續資料流位置,則會傳回得到一個位元組。 否則,它會失敗並傳回一個無效的資料流位置。
需求
標題: <sstream>
命名空間: std