public member function
<sstream>

std::ostringstream::str

string str() const;
void str (const string& s);
Get/set content
The first form (1) returns a string object with a copy of the current contents of the stream.

The second form (2) sets s as the contents of the stream, discarding any previous contents. The object preserves its open mode: if this includes ios_base::ate, the writing position is moved to the end of the new sequence.

Internally, the function calls the str member of its internal string buffer object.

Parameters

str
A string object, whose content is copied.

Return Value

For (1), a string object with a copy of the current contents in the stream buffer.

Example

1
2
3
4
5
6
7
8
9
10
11
12
// ostringstream::rdbuf
#include <string>       // std::string
#include <iostream>     // std::cout
#include <sstream>      // std::ostringstream

int main () {
  std::ostringstream oss;
  oss << "One hundred and one: " << 101;
  std::string s = oss.str();
  std::cout << s << '\n';
  return 0;
}


One hundred and one: 101

Data races

Accesses (1) or modifies (2) the ostringstream object.
Concurrent access to the same object may cause data races.

Exception safety

Basic guarantee: if an exception is thrown, the object is in a valid state.

See also