include iostream using namespace std template class Any void swap Any

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include <iostream>
using namespace std;
template <class Any>
void swap(Any &a, Any &b);
int main()
{
int c = 1;
int d = 2;
swap(c, d);
return 0;
}
template <class Any>
void swap(Any &a, Any &b)
{
cout << a << "and" << b << endl;
}
g++ -c main84.cpp
main84.cpp: In function int main():
main84.cpp:11: ошибка: вызов перегруженной функции swap(int&, int&) неоднозначен
main84.cpp:5: замечание: претенденты: void swap(Any&, Any&) [with Any = int]
/usr/lib/gcc/x86_64-unknown-linux-gnu/4.4.1/../../../../include/c++/4.4.1/bits/move.h:76: замечание: void std::swap(_Tp&, _Tp&) [with _Tp = int]