Personal tools

Supraîncărcarea operatorilor în limbajul C-plus-plus

From linux360

Revision as of 08:40, 9 February 2006 by 209.66.124.150 (talk)
Jump to: navigation, search

Introducere

Operatiile de baza sunt implementate in limbajul C++ cu ajutorul operatorilor. In limbajul C++ operatorii sunt, de fapt, functii. Operatorii oferiti de limbaj pot lucra decat asupra tipurilor de date predefinite. Pentru a folosi operatorii asupra tipurilor de date construite de noi, limbajul C++ ne ofera un mecanism care se numeste supraincarcarea operatorilor.

De ce am avea nevoie de asa ceva? Dupa cum se stie se poate crea o functie a unei clase care sa faca exact ce ar face un operator si care sa o definim (de exemplu) suma. Atunci am apela acea metoda astfel:

Obiect ob1;
Obiect ob2;
Obiect ob3 = ob1.suma( ob2 );

Cam greoi! Ar fi mai simplu daca am scrie aşa:

Obiect ob3 = ob1 + ob2;

Astfel s-a ajuns la nevoia de a supraincarcarea operatorii!