Spec-Zone.ru › C++

std::basic_spanbuf<CharT,Traits>::setbuf

protected:
std::basic_streambuf<CharT, Traits>* setbuf( CharT *s, std::streamsize n ) override;
(начиная с C++23)

Заставляет basic_spanbuf выполнять ввод-вывод в буфере [s, s + n). Эквивалентно вызывает this->span(std::span<CharT>(s, n)), а затем возвращает this.

Установленные биты режима открытия
(влияющие на указатели области чтения)
Возвращаемое значение после установки
eback() gptr() egptr()
std::ios_base::in s s s + n
Установленные биты режима открытия
(влияющие на указатели области записи)
Возвращаемое значение после установки
pbase() pptr() epptr()
std::ios_base::out && !std::ios_base::ate s s s + n
std::ios_base::out && std::ios_base::ate s s + n s + n

Эта функция является защищённой виртуальной функцией; её можно вызвать только через pubsetbuf() или из функций-членов пользовательского класса, производного от std::basic_spanbuf.

Параметры

s - указатель на первый CharT в предоставленном пользователем буфере
n - количество элементов CharT в предоставленном пользователем буфере

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

this

Примечания

Устаревший буфер потока std::strstreambuf или устройство boost.IOStreams boost::basic_array также могут обеспечивать буферизацию ввода-вывода с использованием предоставленного пользователем массива char.

Пример

Смотрите также

pubsetbuf
вызывает setbuf()
(открытая функция-член std::basic_streambuf<CharT,Traits>)
setbuf
[виртуальная]
пытается заменить управляемую последовательность символов массивом
(виртуальная защищённая функция-член std::basic_stringbuf<CharT,Traits,Allocator>)
setbuf
[виртуальная]
пытается заменить управляемую последовательность символов массивом
(виртуальная защищённая функция-член std::strstreambuf)

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/io/basic_spanbuf/setbuf

Spec-Zone.ru

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