function template
<sstream>

std::swap (basic_stringstream)

template <class charT, class traits, class Alloc>
  void swap (basic_stringstream<charT,traits,Alloc>& x,
             basic_stringstream<charT,traits,Alloc>& y);
Swap string streams
Exchanges the values of the basic_stringstream 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_stringstream objects of the same type (i.e., having both the same template parameters, charT, traits and Alloc).

Return value

none

Example

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
// swapping stringstream objects
#include <string>       // std::string
#include <iostream>     // std::cout
#include <sstream>      // std::stringstream

int main () {

  std::stringstream foo;
  std::stringstream bar;

  foo << 100;
  bar << 200;

  swap(foo,bar);

  int val;

  foo >> val; std::cout << "foo: " << val << '\n';
  bar >> val; std::cout << "bar: " << val << '\n';

  return 0;
}


Output:
foo: 200
bar: 100

Data races

Both objects, x and y, are modified.

Exception safety

No-throw guarantee: this member function never throws exceptions.

See also