std::strstreambuf
is a std::basic_streambuf whose associated character sequence is a character array, which may be constant (e.g. a string literal), modifiable but not dynamic (e.g. a stack-allocated array), or dynamic, in which case the std::strstreambuf
may be allowed to reallocate the array as necessary to accommodate output (e.g. by calling delete[] and new[] or user-provided functions).
Typical implementation of a std::strstreambuf
holds four private data members:
1) buffer state, a bitmask type which can represent any combination of the four values "allocated" (destructor will deallocate), "constant" (output not allowed), "dynamic" (output may reallocate), or "frozen" (deallocation and reallocation are not allowed)
2)allocated buffer size (the beginning of the buffer does not need a special data member, it may be stored in the inherited pointer
eback())
3) pointer to user-provided allocation function
4) pointer to user-provided deallocation function.
[edit] NotesAfter any call to str() on a stream with a dynamic buffer, a call to freeze(false) is required to allow the strstreambuf
destructor to deallocate the buffer when necessary.
strstreambuf
has been deprecated since C++98 and removed since C++26. The recommended replacement is std::spanbuf(since C++23).
strstreambuf
object
strstreambuf
object, optionally deallocating the character array
char_type
CharT
[edit] traits_type
Traits
; the program is ill-formed if Traits::char_type
is not CharT
.[edit] int_type
Traits::int_type
[edit] pos_type
Traits::pos_type
[edit] off_type
Traits::off_type
[edit] Member functions destructs the basic_streambuf
object
std::basic_streambuf<CharT,Traits>
) [edit] Locales changes the associated locale and invokes imbue()
std::basic_streambuf<CharT,Traits>
) [edit] obtains a copy of the associated locale
std::basic_streambuf<CharT,Traits>
) [edit] Positioning invokes setbuf()
std::basic_streambuf<CharT,Traits>
) [edit] invokes seekoff()
std::basic_streambuf<CharT,Traits>
) [edit] invokes seekpos()
std::basic_streambuf<CharT,Traits>
) [edit] invokes sync()
std::basic_streambuf<CharT,Traits>
) [edit] Get area obtains the number of characters immediately available in the get area
std::basic_streambuf<CharT,Traits>
) [edit] advances the input sequence, then reads one character without advancing again
std::basic_streambuf<CharT,Traits>
) [edit] reads one character from the input sequence and advances the sequence
std::basic_streambuf<CharT,Traits>
) [edit] reads one character from the input sequence without advancing the sequence
std::basic_streambuf<CharT,Traits>
) [edit] invokes xsgetn()
std::basic_streambuf<CharT,Traits>
) [edit] Put area writes one character to the put area and advances the next pointer
std::basic_streambuf<CharT,Traits>
) [edit] invokes xsputn()
std::basic_streambuf<CharT,Traits>
) [edit] Putback puts one character back in the input sequence
std::basic_streambuf<CharT,Traits>
) [edit] moves the next pointer in the input sequence back by one
std::basic_streambuf<CharT,Traits>
) [edit] Protected member functions constructs a basic_streambuf
object
basic_streambuf
object
basic_streambuf
objects
std::basic_streambuf<CharT,Traits>
) [edit] Positioning replaces the buffer with user-defined array, if permitted
std::basic_streambuf<CharT,Traits>
) [edit] repositions the next pointer in the input sequence, output sequence, or both, using relative addressing
std::basic_streambuf<CharT,Traits>
) [edit] repositions the next pointer in the input sequence, output sequence, or both using absolute addressing
std::basic_streambuf<CharT,Traits>
) [edit] synchronizes the buffers with the associated character sequence
std::basic_streambuf<CharT,Traits>
) [edit] Get area obtains the number of characters available for input in the associated input sequence, if known
std::basic_streambuf<CharT,Traits>
) [edit] reads characters from the associated input sequence to the get area
std::basic_streambuf<CharT,Traits>
) [edit] reads characters from the associated input sequence to the get area and advances the next pointer
std::basic_streambuf<CharT,Traits>
) [edit] reads multiple characters from the input sequence
std::basic_streambuf<CharT,Traits>
) [edit] returns a pointer to the beginning, current character and the end of the get area
std::basic_streambuf<CharT,Traits>
) [edit] writes characters to the associated output sequence from the put area
std::basic_streambuf<CharT,Traits>
) [edit] returns a pointer to the beginning, current character and the end of the put area
std::basic_streambuf<CharT,Traits>
) [edit]
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4