When and why are superclass operator overloads hidden in a subclass?
c++
Solution
Related: Trouble with inheritance of operator= in C++.
`operator=` is the only member function (other than constructors and destructor) that's compiler-generated, and hence the only function that's hidden even when not user-declared in the derived class.
Problem
I'm aware that if a subclass provides an operator method (let's say assignment), this hides that operator in the superclass unless you explicitly do `using superclass::operator=` but in my code, I've seen cases I need to do this even when the sub-class does not implement any operators at all. Is there a concrete list of cases where operators (and other moethds if it's a general case) will be hidden and where they won't?