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

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

Spec-Zone.ru

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