std::basic_streambuf<CharT,Traits>::pubseekoff, std::basic_streambuf<CharT,Traits>::seekoff
pos_type pubseekoff( off_type off, std::ios_base::seekdir dir,
std::ios_base::openmode which = ios_base::in | ios_base::out );
| (1) | |
protected:
virtual pos_type seekoff( off_type off, std::ios_base::seekdir dir,
std::ios_base::openmode which = ios_base::in | ios_base::out );
| (2) |
Устанавливает указатель позиции входной и/или выходной последовательности относительно какой-либо другой позиции.
1) Вызывает
seekoff(off, dir, which) наиболее производного класса.
2) Версия этой функции базового класса не оказывает влияния. Производные классы могут переопределить эту функцию, чтобы разрешить относительное позиционирование указателя позиции.
Параметры
| off | - | относительное смещение для установки указателя позиции. | ||||||||
| dir | - | определяет базовую позицию для применения относительного смещения. Может принимать одно из следующих значений:
|
||||||||
| which | - | определяет, какая из входной и/или выходной последовательностей будет затронута. Может принимать одно или несколько из следующих значений:
|
Примечание
Не все комбинации параметров могут быть допустимы, см. производные версии seekoff для получения подробностей.
Возвращаемое значение
1) Возвращаемое значение
seekoff(off, dir, which)
2) Результирующая абсолютная позиция, как определено указателем позиции. Версия базового класса возвращает
pos_type(off_type(-1)).Пример
Отчеты об ошибках
Следующие отчеты об ошибках, изменяющие поведение, были применены ретроактивно к ранее опубликованным стандартам C++.
| DR | Применено к | Поведение, как опубликовано | Правильное поведение |
|---|---|---|---|
| LWG 55 | C++98 | версия базового класса seekoff возвращаланеопределенную недопустимую позицию потока | возвращает pos_type(off_type(-1)) |
См. также
вызывает seekpos() (публичный член-функция) |
|
|
[virtual] | устанавливает позицию файла, используя относительную адресацию (виртуальная защищенная функция-член std::basic_filebuf<CharT,Traits>) |
|
[virtual] | устанавливает указатель next в последовательности ввода, вывода или в обеих, используя относительную адресацию (виртуальная защищенная функция-член std::basic_stringbuf<CharT,Traits,Allocator>) |
|
[virtual] | устанавливает указатель next в последовательности ввода, вывода или в обеих, используя относительную адресацию (виртуальная защищенная функция-член std::strstreambuf) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/io/basic_streambuf/pubseekoff