Возможно, имелись в виду понятия «перегрузка функций», «переопределение функций» и «сокрытие» в контексте программирования. 17
Перегрузка функций — это создание нескольких функций с одним именем, но с разными параметрами. 37 Под разными параметрами понимают разное количество аргументов функции и/или их тип. 3 Перегрузка функций позволяет выполнять похожие, но технически различные задачи в зависимости от аргументов функции. 7 Компилятор определяет, какая функция должна быть вызвана, исходя из предоставленных при вызове аргументов. 7
Переопределение функций — это когда функция в базовом классе переопределяется в производном классе, чтобы обеспечить другую реализацию функции для производного класса. 2 Функция в производном классе имеет ту же сигнатуру функции, что и функция в базовом классе (то же имя, тот же возвращаемый тип, те же аргументы). 2 Переопределение функций используется для изменения или расширения поведения базового класса. 7
Сокрытие функций — это когда локально объявленная функция имеет то же имя, что и функция, объявленная в области файла, и при этом не вызывает перегрузки. 1 Если функция базового класса не объявлена как virtual, то производная функция класса скрывает её. 1
Таким образом, основные отличия перечисленных понятий заключаются в их назначении, полиморфизме, сигнатуре функции и использовании ключевых слов (например, virtual). 7