C++/Konstruktor i destruktor: Różnice pomiędzy wersjami

Usunięta treść Dodana treść
Nie podano opisu zmian
 
Linia 71:
Najczęstszą funkcją konstruktora jest inicjalizacja obiektu oraz alokacja pamięci dla dodatkowych zmiennych (w tym celu lepiej jest użyć instrukcji inicjujących, które poznasz już za chwilę).
 
=== Instrukcje inicjująceinicjalizujące ===
''' Instrukcje inicjująceinicjalizujące ''' to instrukcje konstruktora spełniające specyficzne zadanie. Mianowicie mogą one zostać wywołane przez kompilator zaraz po utworzeniu klasy. Służą do inicjowaniainicjalizowania pól klasy, w tym stałych i referencji.
 
Jeśli nie zaimplementujemy instrukcji inicjującychinicjalizujących, niczego nie będą one robiły.
 
Jeżeli chcemy zaimplementować '''instrukcje inicjująceinicjalizujące''', musimy po liście argumentów konstruktora, użyć dwukropka, podać nazwę pola, które chcemy zainicjowaćzainicjalizować i jego wartość ujętą w nawiasy okrągłe.
<syntaxhighlight lang="cpp">
Rok()
Linia 87:
{}
</syntaxhighlight>
Działa to podobnie jak użycie inicjowaniainicjalizowania w konstruktorze, jednak w przypadku instrukcji inicjującychinicjalizujących pola będą zainicjowanezainicjalizowane w trakcie tworzenia klasy, a nie po utworzeniu jej obiektu.
 
=== Konstruktor kopiujący ===