function template
<sstream>
std::swap (basic_istringstream)
template <class charT, class traits, class Alloc> void swap (basic_istringstream<charT,traits,Alloc>& x, basic_istringstream<charT,traits,Alloc>& y);
Swap input string streams
Exchanges the values of the basic_istringstream 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_istringstream 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
|
// swapping istringstream objects
#include <string> // std::string
#include <iostream> // std::cout
#include <sstream> // std::istringstream
int main () {
std::istringstream foo ("100");
std::istringstream bar ("200");
swap(foo,bar); // unqualified (uses argument-dependent lookup)
int val;
foo >> val; std::cout << "foo: " << val << '\n';
bar >> val; std::cout << "bar: " << val << '\n';
return 0;
}
|
Output:
Data races
Both objects, x and y, are modified.
Exception safety
No-throw guarantee: this member function never throws exceptions.