30 Input/output library [input.output]

30.6 Stream buffers [stream.buffers]

30.6.3 Class template basic_­streambuf [streambuf]

30.6.3.4 basic_­streambuf virtual functions [streambuf.virtuals]

30.6.3.4.2 Buffer management and positioning [streambuf.virt.buffer]

basic_streambuf* setbuf(char_type* s, streamsize n);

Effects: Влияет на буферизацию потока способом, который определяется отдельно для каждого класса, производного от basic_­streambuf этого пункта ([stringbuf.virtuals], [filebuf.virtuals]).

Default behavior: Ничего не делает. Возврат this.

pos_type seekoff(off_type off, ios_base::seekdir way, ios_base::openmode which = ios_base::in | ios_base::out);

Effects: Изменяет позиции потока в одной или нескольких управляемых последовательностях способом, который определяется отдельно для каждого класса, производного от basic_­streambuf этого пункта ([stringbuf.virtuals], [filebuf.virtuals]).

Default behavior: Возврат pos_­type(off_­type(-1)).

pos_type seekpos(pos_type sp, ios_base::openmode which = ios_base::in | ios_base::out);

Effects: Изменяет позиции потока в одной или нескольких управляемых последовательностях способом, который определяется отдельно для каждого класса, производного от basic_­streambuf этого пункта ([stringbuf], [filebuf]).

Default behavior: Возврат pos_­type(off_­type(-1)).

int sync();

Effects: Синхронизирует контролируемые последовательности с массивами. То есть, если не pbase() равно нулю, символы между pbase() и pptr() записываются в управляемую последовательность. Затем указатели могут быть при необходимости сброшены.

Returns: -1 при неудаче. Что составляет отказ, определяется каждым производным классом ([filebuf.virtuals]).

Default behavior: Возвращает ноль.