Pubblicita'
Overloading di funzioni C++
-
Una delle tante caratteristiche importanti del C++ è sicuramente l’overloading.
In questo articolo discuteremo dell’overloading di funzioni, che descrive la possibilità di dichiarare funzioni con lo stesso identificatore ma con diverso tipo di argomenti.Vediamo subito un esempio:
#include <iostream>
#include <cstdlib>using namespace std;
int Massimo(int x, int y)
{
if(x > y)
return x;
return y;
}float Massimo(float x, float y)
{
if(x > y)
return x;
return y;
}int main(int argc, char *argv[])
{
int a = 10, b = 20;
float c = 3.6, d = 3.2;cout << "Il massimo fra a e b e': " << Massimo(a, b) << endl;
cout << "Il massimo fra c e d e': " << Massimo(c, d) << endl;system("PAUSE");
return EXIT_SUCCESS;
}
Il codice è abbastanza chiaro, la funzione Massimo() è stata scritta in due diversi modi: la prima con argomenti di tipo int e valore di ritorno int, la seconda con argomenti float e valore di ritorno float.
Questo tipo di approccio è molto importante e prende larga scala sulla programmazione ad oggetti, dove è frequente l’overloading di metodi, l’overloading di operatori e l’override di metodi.
Chiaramente è un vantaggio definire più funzioni con uno stesso identificatore, in quanto, si evita di dover scrivere vari nomi e sinonimi (sin, sinl, cos, cosl, sqrt, sqrtl) per funzioni che svolgono compiti simili.
Vuoi tutti gli aggiornamenti di IbA's Blog in tempo reale? Abbonati ai nostri Feed RSS.



Loading...
















Commenti recenti