C++: Konstruktor i destruktor
Konstruktor
Jest to metoda w klasie, która wykonuje się w momencie tworzenia obiektu. Metoda ta nie zwraca żadnej wartości ( nawet void ) oraz nosi taką samą nazwę jak nazwa klasy. Konstruktor możemy wykorzystać do zainicjowania wartości pól klasy, specyficznych dla danego obiektu.
Każda klasa posiada konstruktor, niezależnie od tego, czy go utworzymy. Domyślnym konstruktorem jest pusty, który nie przyjmuje żadnych parametrów.
Destruktor
Jest metodą wykonywaną w celu zwolnienia pamięci po naszym obiekcie. Nosi on tą samą nazwę co nazwa klasy, jednak jest ona poprzedzona symbolem tyldy: ~.
class test{ test(); // konstruktor ~test(); // destruktor };
Przykład
#include <cstdlib> #include <iostream> using namespace std; class komp{ private: int pamiec; // w Mb float procesor; // w GHz int dysk; // w Gb public: komp( int a, float b, int c){ pamiec=a; procesor=b; ustawdysk(c); } void ustawdysk(int x){ dysk = x; } void CoZaKomp(){ cout<<"Pamiec: "<<pamiec<<" Mb, Procesor: "<<procesor<<" GHz,Dysk:"<<dysk<<" Gb."<<endl<<endl; } }; int main(int argc, char *argv[]) { komp acer(1024, 2.3, 250); komp asus(2048, 3.0, 500); cout<<"Acer:"<<endl; acer.CoZaKomp(); cout<<"Asus:"<<endl; asus.CoZaKomp(); system("PAUSE"); return EXIT_SUCCESS; }