共用方式為


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::begios_base::end 和兩個資料流定位在同一個項目。 則為 (或者,如果兩個位置不受影響),將作業失敗。

如果此函式位在修改其中一個或兩個後續資料流位置,則會傳回得到一個位元組。 否則,它會失敗並傳回一個無效的資料流位置。

需求

標題: <sstream>

命名空間: std

請參閱

參考

basic_stringbuf Class

iostream 程式設計

iostreams 慣例