Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
std::basic_...stringstream(3) C++ Standard Libarystd::basic_...stringstream(3)

NAME
       std::basic_ostringstream::basic_ostringstream	  -	std::basic_os-
       tringstream::basic_ostringstream

Synopsis
	  basic_ostringstream()						   (1)
       (since
	  :	   basic_ostringstream(std::ios_base::out)	   {	     }
       C++11)
	  explicit   basic_ostringstream(   std::ios_base::openmode   mode   =
       (until
	  std::ios_base::out						    );
       C++11)
	  explicit   basic_ostringstream(   std::ios_base::openmode   mode  );
       (since
										       C++11)
	  explicit basic_ostringstream(	const
	  std::basic_string<CharT,Traits,Allocator>&			  str,
       (3)
	  std::ios_base::openmode mode = std::ios_base::out );
	  basic_ostringstream(	     basic_ostringstream&&	 other	    );
       (4)     (since
										       C++11)
	  basic_ostringstream(	   std::ios_base::openmode     mode,	 const
       (5)     (since
	  Allocator&				a			    );
       C++20)
	  explicit					  basic_ostringstream(
       (since
	  std::basic_string<CharT,Traits,Allocator>&&			  str,
       (6)     C++20)
	  std::ios_base::openmode mode = std::ios_base::out );
	  template<class SAlloc>

	  basic_ostringstream( const					   (2)
       (since
	  std::basic_string<CharT,Traits,SAlloc>&			  str,
       (7)     C++20)
	  const	Allocator& a )

	  : basic_ostringstream(str, std::ios_base::out, a) { }
	  template<class SAlloc>

	  basic_ostringstream(						 const
       (8)     (since
	  std::basic_string<CharT,Traits,SAlloc>&			  str,
       C++20)

	  std::ios_base::openmode mode,	const Allocator& a );
	  template<class SAlloc>

	  explicit		    basic_ostringstream(		 const
       (9)     (since
	  std::basic_string<CharT,Traits,SAlloc>&			  str,
       C++20)

	  std::ios_base::openmode mode = std::ios_base::out );

	  Constructs new string	stream.

	  1) Default constructor. Constructs new underlying string device with
       the default
	  open mode
	  2)  Constructs  new  underlying  string  device.  The	underlying ba-
       sic_stringbuf object is
	  constructed	as    basic_stringbuf<Char,Traits,Allocator>(mode    |
       std::ios_base::out).
	  3)  Uses  a copy of str as initial contents of the underlying	string
       device. The
	  underlying basic_stringbuf object is constructed as
	  basic_stringbuf<Char,Traits,Allocator>(str,	       mode	     |
       std::ios_base::out).
	  4)  Move constructor.	Constructs the string stream with the state of
       other using move
	  semantics.
	  5) Constructs	new  underlying	 string	 device.  The  underlying  ba-
       sic_stringbuf object is
	  constructed	 as    basic_stringbuf<Char,Traits,Allocator>(mode   |
       std::ios_base::out, a).
	  6) Move-construct the	contents of the	underlying string device  with
       str. The
	  underlying basic_stringbuf object is constructed as
	  basic_stringbuf<Char,Traits,Allocator>(std::move(str),     mode    |
       std::ios_base::out).
	  7) Constructs	new  underlying	 string	 device.  The  underlying  ba-
       sic_stringbuf object is
	  constructed	   as	   basic_stringbuf<Char,Traits,Allocator>(str,
       std::ios_base::out, a).
	  8) Constructs	new  underlying	 string	 device.  The  underlying  ba-
       sic_stringbuf object is
	  constructed as basic_stringbuf<Char,Traits,Allocator>(str, mode |
	  std::ios_base::out, a).
	  9)  Constructs  new  underlying  string  device.  The	underlying ba-
       sic_stringbuf object is
	  constructed as basic_stringbuf<Char,Traits,Allocator>(str, mode |
	  std::ios_base::out). This overload participates in overload  resolu-
       tion only if
	  SAlloc and Allocator are not the same	type.

Parameters
	  str	- string to use	as initial contents of the string stream
	  a	 -  allocator  used  for allocating the	contents of the	string
       stream
		  specifies stream open	mode. It is bitmask type, the  follow-
       ing constants are
		  defined:

		  Constant Explanation
	  mode	- app	   seek	to the end of stream before each write
		  binary   open	in binary mode
		  in	   open	for reading
		  out	   open	for writing
		  trunc	   discard the contents	of the stream when opening
		  ate	   seek	to the end of stream immediately after open
	  other	- another string stream	to use as source

Notes
	  Construction of one-off basic_ostringstream objects in a tight loop,
       such as when
	  used	for  string  conversion, may be	significantly more costly than
       calling str to
	  reuse	the same object.

Example
       // Run this code

	#include <iostream>
	#include <sstream>
	int main()
	{
	    // default constructor (input/output stream)
	    std::stringstream buf1;
	    buf1 << 7;
	    int	n = 0;
	    buf1 >> n;
	    std::cout << "buf1 = " << buf1.str() << " n	= " << n << '\n';

	    // input stream
	    std::istringstream inbuf("-10");
	    inbuf >> n;
	    std::cout << "n = "	<< n <<	'\n';

	    // output stream in	append mode (C++11)
	    std::ostringstream buf2("test", std::ios_base::ate);
	    buf2 << '1';
	    std::cout << buf2.str() << '\n';
	}

Output:
	buf1 = 7 n = 7
	n = -10
	test1

	 Defect	reports

	  The following	behavior-changing defect reports were applied retroac-
       tively to
	  previously published C++ standards.

	    DR	  Applied to	  Behavior as published	      Correct behavior
	  P0935R0 C++11	     default constructor was explicit made implicit

See also
	  str		gets or	sets the contents of underlying	string	device
       object
			(public	member function)
			constructs a basic_stringbuf object
	  constructor	(public	member function	of
			std::basic_stringbuf<CharT,Traits,Allocator>)

http://cppreference.com		  2022.07.31	 std::basic_...stringstream(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=std::ostringstream::ostringstream&sektion=3&manpath=FreeBSD+Ports+15.0>

home | help