Destruktory
virus1441
Destruktor to metoda klasy wywoływana podczas niszczenia obiektu danej klasy. Służy on przede wszystkim do zwalniania pamięci zarezerwowanej dla pól dynamicznych tej klasy. Destruktor, podobnie jak i konstruktor, nie ma typu, a jego nazwa jest identyczna jak nazwa danej klasy poprzedzona tyldą (~).
Przykład
```cpp class Punkt { public: int *x, *y; Punkt(); // kontruktor w którym są tworzone pola x i y ~Punkt(); //Destruktor }; // ... Punkt::~Punkt() { delete x; delete y; } ```W tym przykładzie celowo ominąłem definicję konstruktora, gdyż nie jest ona istotna.
Zobacz też:
a jaki kompilator jest zgodny z ISO ?? Co kompilator to inne obyczaje (przynajmniej niektóre deklarują, że mają swój standard).
Dev jest zgodny? Śmiech na sali.
virus1441: trochę spóźniony, ale... Dev-C++ używa g++ (MinGW) ;)
Bo dev jest zgodny z ISO C++ :) Mój kompilator nie BYŁ (przeżuciłem się na Linuxa, a g++ jest zgodny z ISO). Poprawiłem.
Wszędzie czytałem, że destruktor nie przyjmuje argumentów (i nic nie zwraca) a tu taka definicja. Dev-c++ też się z tym nie zgadza, bo go zapytałem ;-)