function template
<fstream>

std::swap (basic_ifstream)

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

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
// swapping ifstream objects
#include <iostream>     // std::cout
#include <fstream>      // std::ifstream

int main () {
  std::ifstream foo;
  std::ifstream bar ("test.txt");

  swap (foo,bar);

  char c = foo.get();

  while (foo.good()) {
    std::cout << c;
    c = foo.get();
  }

  foo.close();

  return 0;
}

Data races

Both objects, x and y, are modified.

Exception safety

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

See also