Под перезагрузкой понимается переопределение какой-либо функций с различным количеством параметров. Наборы параметров перезагруженной функций могут отличатся порядком следования, количеством и их типом.
Рассмотрим следующий пример:
int test(int a)
{
return a;
}
int test(int a, int b)
{
return a+b;
}
int test(int a,int b,int c)
{
return a+b+c;
}
Вызовем функцию test:
int i = test(1);
qDebug() << i;
i = test(1,2);
qDebug() << i;
i = test(1,2,3);
qDebug() << i;
Получим следующий результат:
1 3 6
Компилятор самостоятельно выбирает нужную функцию. Важно помнить, что возвращаемый тип должен соответствовать всем функциям участвующих в перезагрузке.
