代码: 全选
#include <iostream>
#include <string>
#include <vector>
using namespace std;
template <typename elemtype>
elemtype max(elemtype elem1, elemtype elem2)
{
if (elem1 > elem2)
return elem1;
else
return elem2;
}
int main()
{
int num1 = 4, num2 = 5;
cout << max(num1, num2);
return 0;
}
test.cpp: In function ‘int main()’:
test.cpp:18: 错误: 调用重载的‘max(int&, int&)’有歧义
test.cpp:7: 附注: 备选为: elemtype max(elemtype, elemtype) [with elemtype = int]
/usr/include/c++/4.3/bits/stl_algobase.h:210: 附注: const _Tp& std::max(const _Tp&, const _Tp&) [with _Tp = int]
请指教~~