POO Sobrecàrrega
La revisió el 16:36, 3 oct 2012 per Enric (discussió | contribucions) (Es crea la pàgina amb «La sobrecàrrega és la capacitat de definir el mateix mètode diversos cops en funció del tipus d'arguments que se li passen. * http://en.wikipedia.org/wiki/Function_o…».)
La sobrecàrrega és la capacitat de definir el mateix mètode diversos cops en funció del tipus d'arguments que se li passen.
En C++, per exemple:
class Punt {
private:
int posx;
int posy;
public:
void setCoord(int x, int y) {
posx = x;
posy = y;
}
void setCoord(int a) {
posx = a;
posy = a;
}
}
Com es pot veure, serà diferent si faig la crida a una funció o a l'altra:
Punt p; p.setCoord(10,20);
En canvi, cridaré a la 2a funció si faig (els 2 valors valdran "10"):
p.setCoord(10);
En Python, de nou, no és rellevant, ja que l'argument no té un tipus predefinit. Per simular el comportament de la sobrecàrrega utilitzem els Python: keyworded arguments.