Cenni preliminari sull'overload
Con il linguaggio C++, è possibile eseguire l'overload delle funzioni e operatori.L'overload è la procedura di offrire maggiore di una definizione per un nome di funzione specificata allo stesso ambito.Il compilatore viene lasciato selezionare la versione corretta di funzione o dell'operatore basato sugli argomenti con cui viene chiamato.Ad esempio, la funzione massima è considerata una funzione di overload.Può essere utilizzata nel codice seguente:
// 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 );
}
Nella prima chiamata di funzione, dove il valore massimo due variabili di tipo int sta richiedendo, la funzione max( int, int ) viene chiamato.Tuttavia, nella seconda chiamata di funzione, gli argomenti sono di tipo doubledi conseguenza, la funzione max( double, double ) viene chiamato.