home | help
std::strstreambuf(3)	       C++ Standard Libary	    std::strstreambuf(3)

NAME
     std::strstreambuf - std::strstreambuf

Synopsis
	Defined in header <strstream>
	class  strstreambuf  : public std::basic_streambuf<char>  (deprecated in
     C++98)
								(removed      in
     C++26)

	std::strstreambuf  is  a std::basic_streambuf whose associated character
     sequence is a
	character array, which may be constant (e.g. a string literal),  modifi-
     able 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 reallo-
     cation 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.

Notes
	After  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).

Member functions
Public member functions
	constructor   constructs a strstreambuf object
		      (public member function)
	destructor     destructs  a strstreambuf object, optionally deallocating
     the character
	[virtual]     array
		      (virtual public member function)
	freeze	      sets/clears the frozen state of the buffer
		      (public member function)
		      marks the buffer frozen and returns the beginning  pointer
     of the input
	str	      sequence
		      (public member function)
		      returns  the  next  pointer minus the beginning pointer in
     the output
	pcount	      sequence: the number of characters written
		      (public member function)

Protected member functions
	underflow     reads a character from the input sequence without  advanc-
     ing the next
	[virtual]     pointer
		      (virtual protected member function)
	pbackfail     backs out the input sequence to unget a character
	[virtual]     (virtual protected member function)
	overflow      appends a character to the output sequence, may reallocate
     or
	[virtual]     initially allocate the buffer if dynamic and not frozen
		      (virtual protected member function)
	setbuf	      attempts to replace the controlled character sequence with
     an array
	[virtual]     (virtual protected member function)
	seekoff       repositions the next pointer in the input sequence, output
     sequence,
	[virtual]     or both, using relative addressing
		      (virtual protected member function)
	seekpos       repositions the next pointer in the input sequence, output
     sequence,
	[virtual]     or both using absolute addressing
		      (virtual protected member function)

     Inherited from std::basic_streambuf

Member types
	Member type Definition
	char_type   CharT
	traits_type  Traits;  the  program is ill-formed if Traits::char_type is
     not
		    CharT.
	int_type    Traits::int_type
	pos_type    Traits::pos_type
	off_type    Traits::off_type

Member functions
	destructor	   destructs the basic_streambuf object
	[virtual]	   (virtual public member function of
			   std::basic_streambuf<CharT,Traits>)

Locales
			   invokes imbue()
	pubimbue	    (public  member   function	 of   std::basic_stream-
     buf<CharT,Traits>)

			   obtains a copy of the associated locale
	getloc		     (public   member	function  of  std::basic_stream-
     buf<CharT,Traits>)

Positioning
			   invokes setbuf()
	pubsetbuf	    (public  member   function	 of   std::basic_stream-
     buf<CharT,Traits>)

			   invokes seekoff()
	pubseekoff	     (public   member	function  of  std::basic_stream-
     buf<CharT,Traits>)

			   invokes seekpos()
	pubseekpos	    (public  member   function	 of   std::basic_stream-
     buf<CharT,Traits>)

			   invokes sync()
	pubsync 	     (public   member	function  of  std::basic_stream-
     buf<CharT,Traits>)

Get area
			   obtains the number of characters  immediately  avail-
     able in the get
	in_avail	   area
			   (public   member   function	 of   std::basic_stream-
     buf<CharT,Traits>)

			   advances the input sequence, then reads one character
     without
	snextc		   advancing again
			   (public   member   function	 of   std::basic_stream-
     buf<CharT,Traits>)

	sbumpc		    reads  one character from the input sequence and ad-
     vances the
	stossc		   sequence
	(removed  in  C++17)  (public  member  function  of   std::basic_stream-
     buf<CharT,Traits>)

			   reads  one  character from the input sequence without
     advancing the
	sgetc		   sequence
			   (public   member   function	 of   std::basic_stream-
     buf<CharT,Traits>)

			   invokes xsgetn()
	sgetn		     (public   member	function  of  std::basic_stream-
     buf<CharT,Traits>)

Put area
			   writes one character to the put area and advances the
     next
	sputc		   pointer
			   (public   member   function	 of   std::basic_stream-
     buf<CharT,Traits>)

			   invokes xsputn()
	sputn		     (public   member	function  of  std::basic_stream-
     buf<CharT,Traits>)

Putback
			   puts one character back in the input sequence
	sputbackc	    (public  member   function	 of   std::basic_stream-
     buf<CharT,Traits>)

			   moves  the next pointer in the input sequence back by
     one
	sungetc 	    (public  member   function	 of   std::basic_stream-
     buf<CharT,Traits>)

Protected member functions
	constructor   constructs a basic_streambuf object
		      (protected member function)
	operator=     replaces a basic_streambuf object
	(C++11)       (protected member function)
	swap	      swaps two basic_streambuf objects
	(C++11)       (protected member function)

Locales
	imbue	      changes the associated locale
	[virtual]     (virtual protected member function of
		      std::basic_streambuf<CharT,Traits>)

Positioning
	setbuf	      replaces the buffer with user-defined array, if permitted
	[virtual]     (virtual protected member function of
		      std::basic_streambuf<CharT,Traits>)
		      repositions the next pointer in the input sequence, output
     sequence,
	seekoff       or both, using relative addressing
	[virtual]     (virtual protected member function of
		      std::basic_streambuf<CharT,Traits>)
		      repositions the next pointer in the input sequence, output
     sequence,
	seekpos       or both using absolute addressing
	[virtual]     (virtual protected member function of
		      std::basic_streambuf<CharT,Traits>)
	sync	      synchronizes the buffers with the associated character se-
     quence
	[virtual]     (virtual protected member function of
		      std::basic_streambuf<CharT,Traits>)

Get area
		      obtains  the  number  of characters available for input in
     the associated
	showmanyc     input sequence, if known
	[virtual]     (virtual protected member function of
		      std::basic_streambuf<CharT,Traits>)
	underflow     reads characters from the associated input sequence to the
     get area
	[virtual]     (virtual protected member function of
		      std::basic_streambuf<CharT,Traits>)
		      reads characters from the associated input sequence to the
     get area
	uflow	      and advances the next pointer
	[virtual]     (virtual protected member function of
		      std::basic_streambuf<CharT,Traits>)
	xsgetn	      reads multiple characters from the input sequence
	[virtual]     (virtual protected member function of
		      std::basic_streambuf<CharT,Traits>)
	eback	      returns a pointer to the beginning, current character  and
     the end of
	gptr	      the get area
	egptr	      (protected member function)
	gbump	      advances the next pointer in the input sequence
		      (protected member function)
		      repositions  the	beginning, next, and end pointers of the
     input
	setg	      sequence
		      (protected member function)

Put area
	xsputn	      writes multiple characters to the output sequence
	[virtual]     (virtual protected member function of
		      std::basic_streambuf<CharT,Traits>)
	overflow      writes characters to the associated output  sequence  from
     the put area
	[virtual]     (virtual protected member function of
		      std::basic_streambuf<CharT,Traits>)
	pbase	       returns a pointer to the beginning, current character and
     the end of
	pptr	      the put area
	epptr	      (protected member function)
	pbump	      advances the next pointer of the output sequence
		      (protected member function)
		      repositions the beginning, next, and end pointers  of  the
     output
	setp	      sequence
		      (protected member function)

Putback
		      puts  a  character  back into the input sequence, possibly
     modifying the
	pbackfail     input sequence
	[virtual]     (virtual protected member function of
		      std::basic_streambuf<CharT,Traits>)

http://cppreference.com 	   2024.06.10		    std::strstreambuf(3)

home | help