我們有以下幾點: (pseudoish)重載運算符=的結構,內部的階級
class MyClass
{
private:
struct MyStruct{
MyStruct operator=(const MyOtherStruct& rhs);
int am1;
int am2;
};
};
我們想重載=
運營商在MyClass.cpp做這樣的事情:
MyStruct&
MyStruct::operator=(const MyOtherStruct& rhs)
{
am1 = rhs.am1;
am2 = rhs.am2;
}
但是,它不想編譯。我們得到類似
一個錯誤 「失蹤;在此之前&」
和
「如果後面:: MYSTRUCT必須是類或命名空間」
這裏有一些我失蹤的概念嗎?
爲什麼你有2個返回類型在你的operator =函數上? – goji
嘿謝謝,修好了! – MrDuk
你缺少資格。課堂之外沒有'MyStruct'。 – chris