Visão geral da sobrecarga
Com a linguagem C++, você pode sobrecarregar operadores e funções.Sobrecarga é a prática de fornecimento de mais de uma definição para um nome de função determinada no mesmo escopo.O compilador é da esquerda para selecionar a versão apropriada da função ou operador com base nos argumentos com o qual ele é chamado.Por exemplo, o máximo de função é considerado uma função sobrecarregada.Ele pode ser usado no código como, por exemplo, o seguinte:
// overview_overload.cpp
double max( double d1, double d2 )
{
return ( d1 > d2 ) ? d1 : d2;
}
int max( int i1, int i2 )
{
return ( i1 > i2 ) ? i1 : i2;
}
int main()
{
int i = max( 12, 8 );
double d = max( 32.9, 17.4 );
}
Na primeira chamada de função, onde o valor máximo de duas variáveis do tipo int está sendo solicitada, a função max( int, int ) é chamado.No entanto, na segunda chamada de função, os argumentos são do tipo double, de modo que a função max( double, double ) é chamado.