Menu
Coddy logo textTech

Перегрузка функций

Часть раздела Основы путешествия по C++ на Coddy — урок 54 из 74.

Перегрузка функций — это возможность в C++, при которой две или более функции могут иметь одинаковое имя, но разные параметры. При вызове перегруженной функции компилятор C++ определяет наиболее подходящее определение для использования, сравнивая типы аргументов, использованных в вызове, с типами параметров, указанными в определениях. Если подходящая функция не найдена, компилятор выдаст ошибку.

Вот пример перегрузки функций:

int add(int a, int b) {
	return a + b;
}
double add(double a, double b) {
	return a + b;
}
int main() {
	int sum1 = add(5, 3); // Вызывает первую версию add
	double sum2 = add(2.5, 3.7); // Вызывает вторую версию add
    return 0;
}

В этом примере у нас есть две функции с именем add. Одна принимает два параметра типа int, а другая — два параметра типа double. В зависимости от типов аргументов, которые мы передаем в add, вызывается соответствующая версия функции.

Важно отметить, что одного лишь типа возвращаемого значения недостаточно для перегрузки функции. Функции должны отличаться своими списками параметров.

Шпаргалка

Перегрузка функций позволяет создавать несколько функций с одним и тем же именем, но разными параметрами. Компилятор выбирает подходящую функцию на основе типов аргументов:

int add(int a, int b) {
	return a + b;
}
double add(double a, double b) {
	return a + b;
}
int main() {
	int sum1 = add(5, 3); // Вызывает версию для int
	double sum2 = add(2.5, 3.7); // Вызывает версию для double
    return 0;
}

Функции должны различаться списками параметров — одного лишь типа возвращаемого значения недостаточно для перегрузки.

Попробуйте сами

В этом уроке нет задания по программированию.

quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Основы