std::basic_spanbuf<CharT,Traits>::span
std::span<CharT> span() const noexcept; | (1) | (начиная с C++23) |
void span( std::span<CharT> s ) noexcept; | (2) | (начиная с C++23) |
1) Возвращает
span, ссылающийся на область записанных данных, если в режиме открытия установлен std::ios_base::out, или span, ссылающийся на базовый буфер, в противном случае.
2) Заставляет
basic_spanbuf выполнять ввод-вывод в буфере, на который ссылается s. Устанавливает указатели области чтения, области записи или обеих областей. | Установленные биты в режиме открытия (влияют на указатели области чтения) | Возвращаемое значение после установки | ||
|---|---|---|---|
eback() |
gptr() |
egptr() |
|
std::ios_base::in |
s.data() |
s.data() |
s.data() + s.size() |
| Установленные биты в режиме открытия (влияют на указатели области записи) | Возвращаемое значение после установки | ||
pbase() |
pptr() |
epptr() |
|
std::ios_base::out && !std::ios_base::ate |
s.data() |
s.data() |
s.data() + s.size() |
std::ios_base::out && std::ios_base::ate |
s.data() |
s.data() + s.size() |
s.data() + s.size() |
Параметры
| s | - | std::span, ссылающийся на буфер, предоставленный пользователем |
Возвращаемое значение
1)
std::span<CharT>(pbase(), pptr()), если в режиме открытия установлен std::ios_base::out, или std::span<CharT>, ссылающийся на весь базовый буфер, в противном случае.
2) Нет.
Пример
См. также
| заменяет связанную символьную строку или получает её копию (открытая функция-член std::basic_stringbuf<CharT,Traits,Allocator>) |
|
|
(C++20) | получает представление базовой последовательности символов (открытая функция-член std::basic_stringbuf<CharT,Traits,Allocator>) |
| помечает буфер как замороженный и возвращает указатель на начало входной последовательности (открытая функция-член std::strstreambuf) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/io/basic_spanbuf/span