Spec-Zone.ru › C++

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 - определяет базовую позицию для применения относительного смещения. Может принимать одно из следующих значений:
Константа Объяснение
beg начало потока
end конец потока
cur текущая позиция указателя позиции потока
which - определяет, какая из входной и/или выходной последовательностей будет затронута. Может принимать одно или несколько из следующих значений:
Константа Объяснение
in воздействие на входную последовательность
out воздействие на выходную последовательность

Примечание

Не все комбинации параметров могут быть допустимы, см. производные версии seekoff для получения подробностей.

Возвращаемое значение

1) Возвращаемое значение seekoff(off, dir, which)
2) Результирующая абсолютная позиция, как определено указателем позиции. Версия базового класса возвращает pos_type(off_type(-1)).

Пример

Отчеты об ошибках

Следующие отчеты об ошибках, изменяющие поведение, были применены ретроактивно к ранее опубликованным стандартам C++.

DR Применено к Поведение, как опубликовано Правильное поведение
LWG 55 C++98 версия базового класса seekoff возвращала
неопределенную недопустимую позицию потока
возвращает pos_type(off_type(-1))

См. также

pubseekpos
вызывает seekpos()
(публичный член-функция)
seekoff
[virtual]
устанавливает позицию файла, используя относительную адресацию
(виртуальная защищенная функция-член std::basic_filebuf<CharT,Traits>)
seekoff
[virtual]
устанавливает указатель next в последовательности ввода, вывода или в обеих, используя относительную адресацию
(виртуальная защищенная функция-член std::basic_stringbuf<CharT,Traits,Allocator>)
seekoff
[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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API