Situatie
Constructorul este o funcție membră specială a unei clase ce se apelează în mod automat la crearea unui obiect
Rol: alocare si inițializare
Inițializarea obiectelor
IdNumeClasa idObiect();
sau
IdNumeClasa idObiect = valParam; //în cazul în care lista de parametri e formată dintr-un singur parametru
Solutie
Pasi de urmat
- Tipuri de constructori:
Constructori impliciți
-definit de utilizator – constructor ce nu are niciun parametru
-generat de compilator – dacă o clasă nu are niciun constructor definit atunci compilatorul generează unul automat, fară parametri al cărui corp nu conține nicio instrucțiune
-constructor cu toți parametri impliciți
class Complex {
…
public:
Complex(){
re = 0;
im = 0;
printf (“Apel constructorn”);
}
…
};
Constructori cu parametri
-cu parametri ce nu iau valori implicite
-cu parametri ce iau valori implicite
class Complex {
…
public:
Complex(float r = 0, float i = 0){
re = r;
im = i;
}
…
};
Constructori de copiere – iniţializarea obiectelor la declarare cu alte obiecte deja create
-definiți de utilizator
-generați de compilator
class Complex {
…
public:
Complex(const Complex &z){
re = z.re;
im = z.im;
printf(“Apel constructor de copieren”) ;
}
…
};
Leave A Comment?