Konstruktoret

Konstruktoret 

Me qëllim të inicializimit të variablave të cilat përfshihen në komponentet e klasës, brenda saj definohen funksione të veçanta, të cilat njihen si konstruktorë. Këto funksione ekzekutohen automatikisht, kur deklarohen objektet përkatëse të
klasave në fjalë. Konstruktorët dallohen nga funksionet e zakonshme brenda klasës, sepse kanë emra të njëjtë me klasat dhe para emrave të tyre si dhe te komandat e fundit return nuk shënohet asgjë.
Konstruktorët mund të kenë ose mund të mos kenë parametra formalë.

Konstruktorët pa parametra formalë

Nëse përcaktimi i vlerave të variablave në komponentet private bëhet brenda konstruktorëve, ato mund të mos kenë parametra formalë.
Nuk është e thënë që vlerat e variablave private brenda klasës të jenë vetëm konstante. Ato mund të lexohen si vlera të çfarëdoshme edhe nga jashtë.

Konstruktorët me parametra formalë

Përmes konstruktorëve, si edhe përmes funksioneve të zakonshme, variablave brenda klasës mund t'u shoqërohen edhe vlera të çfarëdoshme.

Llogaritjet brenda konstruktorëve

Përveç inicializimit të variablave me vlera, brenda konstruktorëve mund të kryhen edhe llogaritje të ndryshme. Por, rezultatet e llogaritjeve duhet të përcillen te variablat e përfshira në komponentet e klasave.
Nëse gjatë ekzekutimit të programit vlerat e variablave të caktuara brenda klasës nuk ndryshojnë, ato mund të inicializohen direkt gjatë deklarimit të objektit përkatës.

Disa konstruktorë njëkohësisht

Brenda një klase mund të përfshihen edhe disa konstruktorë njëkohësisht.
Kjo lidhet me krijimin e disa objekteve të klasës në fjalë, ashtu që objektet e ndryshme të mund ta shfrytëzojnë njërin nga konstruktorët e definuar. Thirrja automatike e konstruktorit të caktuar lidhet me deklarimin e objektit përkatës dhe varet nga numri i parametrave aktualë ose nga tipi i tyre. Në këtë rast, meqë njëkohësisht definohen disa konstruktorë, flitet për konstruktorë të mbingarkuar (ang. overloading).

Thirrja në bazë të numrit të parametrave

Nëse konstruktorët e përfshirë në definicionin e klasës dallohen mes vete për nga numri i parametrave, përfshirë edhe konstruktorin pa parametra, kompjuteri do ta thërrasë automatikisht konstruktorin i cili ka aq parametra formalë sa janë shënuar brenda kllapave gjatë deklarimit të objektit përkatës në program.

Thirrja në bazë të tipit të parametrave

Nëse konstruktorët e përfshirë në definicionin e klasës dallohen mes vete për nga tipi i parametrave, kompjuteri do ta thërrasë automatikisht konstruktorin me tip të njëjtë të parametrave formalë me parametrat aktualë që janë shënuar brenda kllapave gjatë deklarimit të objektit përkatës në program.

Referim
Agni Dika, "Programimi i Orientuar në Objekte në C++" 2007.