如何使用赋值运算符实现设置基类成员?例如,如果某人在派生类中定义赋值运算符,像这样:
(其中
(其中
colour
和Colour()
都是基类的成员 - 这意味着下面指示的行是非法的)Derived& Derived::operator=(const Derived& rhs)
{
if (&rhs != this)
{
Colour(rhs.colour); // not allowed
Colour(rhs.Colour()); // not allowed
}
return *this;
}
有什么解决方案吗? 在基类中是否有将运算符重载链接在一起的方法? 我应该像这样做...
有解决方案吗?在基类中是否有将运算符重载链接在一起的方法?我需要做些什么...Derived& Derived::operator=(const Derived& rhs) : Base::operator=(rhs)
...?