Дві функції називаються перевантаженимиякщо вони мають однакове ім'я, оголошені в одній і тій же області видимості, але мають різні списки формальних параметрів.
Під перевантаженням функції розуміється, визначення кількох функцій (Дві або більше) з однаковим ім'ям, але різними параметрами. Набори параметрів перевантажених функцій можуть відрізнятися порядком прямування, кількістю, типом.
Для того, щоб мати можливість використовувати кілька варіантів підпрограми з одним і тим же ім'ям, але з різним числом аргументів або іншими типами аргументів (тобто з різною сигнатурою, оскільки список аргументів – частина сигнатури), вводиться навантаження підпрограм.