关于重载二义性

来源:互联网 发布:java代码编写经验 编辑:程序博客网 时间:2024/06/03 13:42

C++编译器只根据函数参数表,也就是参数类型和个数进行重载版本的调用匹配,函数返回值不顶用

另外,函数默认参数时会产生二义性,代码必须这样调用才是对的。


#include <iostream>using namespace std;int max(int a,int b){return a<b?b:a;}int max(int a,int b,int c=0){cout<<"c == "<<c<<endl;return a<b?b:a;}int main(){max(5,3,1);return 0;}

否则就会有如下编译错误|:



0 0
原创粉丝点击