看书上一句话做的实验:
书上说:有时候,即使两个函数都完全匹配,仍可完成重载解析。其中一种情况:指向非const数据的指针和引用优先与非const的指针和引用参数匹配。不过,const和非const之间的区别只适用于指针和引用指向的数据。否则会出现二义性错误。
实验:
#include <iostream>
using namespace std;
void f(int& a)
{
cout << "f1" << endl;
}
void f(const int& a)
{
cout <<"f2" <<endl;
}
int main()
{
int x = 20;
f(x); //输出f1
const int y =30;
f(y); //输出f2;
return 0;
}