本文主要是介绍C++错误[错误] call of overloaded ‘min(int, int)‘ is ambiguous,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
错误代码:
#include<iostream>
using namespace std;template <class T>
T min(T x,T y){if(x<y){return x;}else return y;
}int main(){int n1=2,n2=10;double d1=1.5,d2=5.6;cout<<min(n1,n2)<<endl;cout<<min(d1,d2)<<endl;
}
正确代码:
#include<iostream>using namespace std;template <class T>T min(T x,T y){if(x<y){return x;}else return y;}int main(){int n1=2,n2=10;double d1=1.5,d2=5.6;cout<<::min(n1,n2)<<endl;cout<<::min(d1,d2)<<endl;}
分析:
我定义的min与命名空间冲突了,所以报错
解决:
::min();//调用的自己写的min()
std::min();//调用的标准模板库的min
这篇关于C++错误[错误] call of overloaded ‘min(int, int)‘ is ambiguous的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!