function template
<sstream>
std::swap (basic_ostringstream)
template <class charT, class traits, class Alloc> void swap (basic_ostringstream<charT,traits,Alloc>& x, basic_ostringstream<charT,traits,Alloc>& y);
Swap output string streams
Exchanges the values of the basic_ostringstream objects x and y.
This is an overload of the generic algorithm swap that behaves as if x.swap(y) was called.
Parameters
- x,y
- basic_ostringstream objects of the same type (i.e., having both the same template parameters, charT, traits and Alloc).
Example
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
|
// swapping ostringstream objects
#include <string> // std::string
#include <iostream> // std::cout
#include <sstream> // std::ostringstream
int main () {
std::ostringstream foo;
std::ostringstream bar;
foo << 100;
bar << 200;
swap(foo,bar); // unqualified (uses argument-dependent lookup)
std::cout << "foo: " << foo.str() << '\n';
std::cout << "bar: " << bar.str() << '\n';
return 0;
}
|
Output:
Data races
Both objects, x and y, are modified.
Exception safety
No-throw guarantee: this member function never throws exceptions.