Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Leer Wat Is een Constructor van de Klasse | Constructors en Destructors
C++ OOP
course content

Cursusinhoud

C++ OOP

C++ OOP

1. Fundamenten van OOP in C++
2. Constructors en Destructors
3. Overzicht van Encapsulatie
4. Overzicht van Overerving
5. Overzicht van Polymorfisme

book
Wat Is een Constructor van de Klasse

Note
Definitie

Constructor is een speciale methode van een klasse die wordt aangeroepen wanneer een object wordt aangemaakt. Hiermee kun je de attributen initialiseren met betekenisvolle waarden.

Door gebruik te maken van constructors kun je het aanmaken van objecten vereenvoudigen. Zonder een constructor zou je elke eigenschap afzonderlijk moeten instellen en mogelijk meerdere methoden moeten aanroepen om het object in een bruikbare toestand te krijgen.

Het primaire doel van een constructor is het initialiseren van de nieuw aangemaakte instantie. Deze kan de beginwaarden van de attributen instellen op basis van de aan de constructor doorgegeven parameters, zodat het object in een geldige toestand start.

Syntax van Constructor

Hoewel het ontwikkelen van een constructor eenvoudig lijkt, zijn er tal van specifieke aandachtspunten. De algemene aanpak voor het maken ervan is:

student.h

student.h

copy
12345678
class Student { public: Student() { name = 'Default'; } std::string name; };
  • Naam: constructor heeft dezelfde naam als de klasse zelf;

  • Returntype: constructors hebben geen returntype, zelfs niet void;

  • Parameters: constructors kunnen parameters accepteren en kunnen worden overbelast met verschillende sets parameters om verschillende manieren van initialiseren van objecten mogelijk te maken;

  • Automatische aanroep: constructor wordt automatisch aangeroepen door de compiler wanneer een object wordt aangemaakt.

Standaardconstructor

Een standaardconstructor is een constructor die kan worden aangeroepen zonder argumenten. Hieronder volgt hoe standaardconstructors worden gedefinieerd en gebruikt:

main.cpp

main.cpp

copy
1234567891011121314
#include <iostream> class Example { public: Example() { std::cout << "Object was created!"; } }; int main() { Example obj; }

Je kunt experimenteren met de bovenstaande code. De logica die is geschreven in de Example()-methode wordt elke keer uitgevoerd wanneer een instantie van de klasse wordt aangemaakt.

Note
Opmerking

Probeer een extra object toe te voegen of de logica binnen de constructor aan te passen.

Als er geen constructor is gedefinieerd, genereert de compiler een standaardconstructor. Het gedrag hiervan hangt af van de typen lidvariabelen: fundamentele typen, standaard-constructeerbare typen of door de gebruiker gedefinieerde typen.

main.cpp

main.cpp

copy
123456789101112
#include <iostream> class Example { public: int value; }; int main() { Example obj; // Default constructor std::cout << obj.value; }

Een attribuut is een fundamenteel gegevenstype. De automatisch gegenereerde standaardconstructor initialiseert lidvariabelen van ingebouwde typen niet. Deze zullen onbepaalde waarden hebben als u een object aanmaakt en deze velden niet expliciet initialiseert.

Note
Opmerking

Het kan zijn dat de compiler een consistente waarde voor de value-variabele levert, maar de standaard vereist dit niet en het is mogelijk dat deze een willekeurige waarde bevat.

question mark

Wanneer wordt de constructor aangeroepen?

Select the correct answer

Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 2. Hoofdstuk 1

Vraag AI

expand

Vraag AI

ChatGPT

Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.

course content

Cursusinhoud

C++ OOP

C++ OOP

1. Fundamenten van OOP in C++
2. Constructors en Destructors
3. Overzicht van Encapsulatie
4. Overzicht van Overerving
5. Overzicht van Polymorfisme

book
Wat Is een Constructor van de Klasse

Note
Definitie

Constructor is een speciale methode van een klasse die wordt aangeroepen wanneer een object wordt aangemaakt. Hiermee kun je de attributen initialiseren met betekenisvolle waarden.

Door gebruik te maken van constructors kun je het aanmaken van objecten vereenvoudigen. Zonder een constructor zou je elke eigenschap afzonderlijk moeten instellen en mogelijk meerdere methoden moeten aanroepen om het object in een bruikbare toestand te krijgen.

Het primaire doel van een constructor is het initialiseren van de nieuw aangemaakte instantie. Deze kan de beginwaarden van de attributen instellen op basis van de aan de constructor doorgegeven parameters, zodat het object in een geldige toestand start.

Syntax van Constructor

Hoewel het ontwikkelen van een constructor eenvoudig lijkt, zijn er tal van specifieke aandachtspunten. De algemene aanpak voor het maken ervan is:

student.h

student.h

copy
12345678
class Student { public: Student() { name = 'Default'; } std::string name; };
  • Naam: constructor heeft dezelfde naam als de klasse zelf;

  • Returntype: constructors hebben geen returntype, zelfs niet void;

  • Parameters: constructors kunnen parameters accepteren en kunnen worden overbelast met verschillende sets parameters om verschillende manieren van initialiseren van objecten mogelijk te maken;

  • Automatische aanroep: constructor wordt automatisch aangeroepen door de compiler wanneer een object wordt aangemaakt.

Standaardconstructor

Een standaardconstructor is een constructor die kan worden aangeroepen zonder argumenten. Hieronder volgt hoe standaardconstructors worden gedefinieerd en gebruikt:

main.cpp

main.cpp

copy
1234567891011121314
#include <iostream> class Example { public: Example() { std::cout << "Object was created!"; } }; int main() { Example obj; }

Je kunt experimenteren met de bovenstaande code. De logica die is geschreven in de Example()-methode wordt elke keer uitgevoerd wanneer een instantie van de klasse wordt aangemaakt.

Note
Opmerking

Probeer een extra object toe te voegen of de logica binnen de constructor aan te passen.

Als er geen constructor is gedefinieerd, genereert de compiler een standaardconstructor. Het gedrag hiervan hangt af van de typen lidvariabelen: fundamentele typen, standaard-constructeerbare typen of door de gebruiker gedefinieerde typen.

main.cpp

main.cpp

copy
123456789101112
#include <iostream> class Example { public: int value; }; int main() { Example obj; // Default constructor std::cout << obj.value; }

Een attribuut is een fundamenteel gegevenstype. De automatisch gegenereerde standaardconstructor initialiseert lidvariabelen van ingebouwde typen niet. Deze zullen onbepaalde waarden hebben als u een object aanmaakt en deze velden niet expliciet initialiseert.

Note
Opmerking

Het kan zijn dat de compiler een consistente waarde voor de value-variabele levert, maar de standaard vereist dit niet en het is mogelijk dat deze een willekeurige waarde bevat.

question mark

Wanneer wordt de constructor aangeroepen?

Select the correct answer

Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 2. Hoofdstuk 1
some-alt