//===----------------------------------------------------------------------===// // // ΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚΚThe LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // // template > // class basic_ifstream // template // void swap(basic_ifstream& x, basic_ifstream& y); #include #include int main() { { std::ifstream fs1("test.dat"); std::ifstream fs2("test2.dat"); swap(fs1, fs2); double x = 0; fs1 >> x; assert(x == 4.5); fs2 >> x; assert(x == 3.25); } { std::wifstream fs1("test.dat"); std::wifstream fs2("test2.dat"); swap(fs1, fs2); double x = 0; fs1 >> x; assert(x == 4.5); fs2 >> x; assert(x == 3.25); } }