There is this code:
#include class Base { public: Base(){ std::cout << \"Constructor base\" << std::endl; }
That is because the default assignment operator created calls it's base assignment operator, i.e. it isn't inherited but still called as part of the default assignment operator.