雖然編譯下面的代碼我收到錯誤的參考「距離」是曖昧
參考「距離」是不明確的
#include<iostream>
using namespace std;
class distance
{
int feet,inches;
distance():feet(0),inches(0)
{
}
distance(int f,int i):feet(f),inches(i)
{
}
void show()
{
cout<<"feet "<<feet;
cout<<endl<<"inches "<<inches;
}
distance operator + (distance) ;
};
distance distance::operator + (distance d)
{
int f,i;
f=feet+d.feet;
i=inches+d.inches;
return distance(f,i);
}
int main()
{
distance d1;
distance d2(2,3),d3(7,5);;
d1=d2+d3;
d1.show();
}
誰能幫助我的錯誤。 並提供給我解決方案,併爲什麼我得到這個錯誤。
這是你的真實密碼?目前,'distance'構造函數是私有的。 –
由於'使用名稱空間標準符號','距離'是不明確的,因此'std :: distance'函數有效。永遠不要這樣做。 – vladon