我们有以下内容:(伪)
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 必须是一个类或命名空间”
我在这里缺少一些概念吗?