Operator-overloading

Uit Wikipedia, de vrije encyclopedie
Ga naar: navigatie, zoeken

Operator-overloading is een techniek die door sommige programmeertalen zoals C++ wordt ondersteund en de programmeur de mogelijkheid geeft een operator (bijvoorbeeld + of -) een (nieuwe) betekenis te geven voor een bepaalde klasse van objecten.

Een voorbeeld in pseudocode:

Getal g1= new Getal("1");
Getal g2= new Getal("2");
Getal g3= g1 + g2;

De waarde van g3 zou nu "12", maar ook "3" kunnen zijn, afhankelijk van de implementatie van de operator '+' voor deze klasse.

In de programmeertaal Java, die weliswaar veel op C++ lijkt, is operator-overloading niet mogelijk. Bovenstaande voorbeeld zou er in Java als volgt uitzien:

Getal g1= new Getal("1");
Getal g2= new Getal("2");
Getal g3= g1.add(g2);

De waarde van g3 zou nu "12", maar ook "3" kunnen zijn, afhankelijk van de implementatie van de methode 'add' voor deze klasse.