Question:
How can I call the operator= of the base class from the operator=in the derived class?
The data member in the base class is a private data member. I want to be able to use operator = in the derived class and call the operator = in the base class
Answer:
I am assuming that the copy assignment operator in the base class iseither public or protected so that you can use it from the derived class.Given that assumption, here is a code snippet that does the exact same thing.
class Base{protected: const Base &operator = (const Base &rhs) { data = rhs.data; return *this; }private: int data;};class Derived : public Base{public: const Derived &operator =(const Derived &rhs) { // call base classes assignment first Base::operator=(rhs); data = rhs.data; return *this; }private: int data;};