C++函数重载中的const类型
class fuck
{
public:
};
int xxx(const fuck&)
{
std::cout<<"const fuck&"<<std::endl;
return 0;
}
int xxx(fuck&)
{
std::cout<<"fuck&"<<std::endl;
return 0;
}
上面的两个函数构成重载,是正确的。
int xxx(const int)
{
std::cout<<"const fuck&"<<std::endl;
return 0;
}
int xxx(int)
{
std::cout<<"fuck&"<<std::endl;
return 0;
}
错误,C2084。
int xxx(const int*)
{
std::cout<<"const fuck&"<<std::endl;
return 0;
}
int xxx(int*)
{
std::cout<<"fuck&"<<std::endl;
return 0;
}
正确,同引用。