1
我想寫的操作符重載代碼基本塊。但是,我收到了一些我無法解釋的錯誤。
頭文件:C++運算符重載錯誤
class Overloading
{
public:
int number;
Overloading();
Overloading(int);
Overloading operator+(Overloading);
void vUselessoverloadFunction();
};
C++代碼:
Overloading::Overloading()
{}
Overloading::Overloading(int i)
{
number = i;
}
Overloading Overloading::operator+(Overloading Object2)
{
Overloading NewObject;
NewObject.number = number + Object2.number;
return (NewObject);
}
void Overloading::vUselessoverloadFunction() {
Overloading ObjectOne(15);
Overloading ObjectTwo(24);
Overloading ObjectThree();
ObjectThree = ObjectOne+ObjectTwo;
cout << ObjectOne.number << endl;
cout << ObjectTwo.number << endl;
cout << "Overloaded object value: " << ObjectThree.number << endl;
}
我得到如下錯誤:
線ObjectThree = ObjectOne+ObjectTwo;
:
-Assignment的函數 '重載ObjectThree()'
- 無法轉換在分配
和在線cout << "Overloaded object value: " << ObjectThree.number << endl;
「超載」到「重載()」- 在'ObjectThree'中請求成員'number',它是非類類型'Overloading()'。
任何幫助將不勝感激!
一個最棘手的解析 – doctorlove