Если anotherClass является базовым классом, который содержит функцию-член, например
virtual void f();
, и вы решили перегрузить функцию в производном классе, например
virtual void f(int);
, она "скрывает" f() в базовом классе.Например, вызов f () через указатель на производный класс приведет к ошибке, поскольку компилятор больше не «видит» версию f (), не принимающую аргументы из базового класса.
Byнаписав
using Base::f;
, вы можете вернуть функцию базовых классов обратно в область видимости, что позволит разрешить перегрузку, как вы и ожидали, что она будет работать в первую очередь.