Every class has at least one assignment operator implicitly defined when we don't provide one ourselves.
And when a member function in a derived class is defined with the same name as a member in the base class, it hides all the base class definitions for that name.
You can use a using declaration, but be warned that it will pull all the members named operator=
and allow code like this:
A a;
B b;
b = a;
Which is slightly dubious.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…