WikiDer > Destruktor (Informatik)
EIN Zerstörer ist in einigen objektorientiertenProgrammiersprachen eine Spezies Methode von a Klasse die aufgerufen wird, kurz bevor eine Instanz dieser Klasse aus dem Speicher entladen wird. Nicht alle objektorientierten Programmiersprachen haben einen Destruktor: C hat zum Beispiel Destruktoren, aber Java wieder nicht.
Das Gegenstück eines Destruktors ist a Konstrukteur die ausgeführt wird, wenn das Objekt erstellt wird.
Beispiel
In C sieht ein Destruktor so aus:
#includeusing namespace std;class Shape { public: Shape() { cout << "Shape" << endl; } virtual ~Shape() { cout << "~Shape" << endl; }};class Circle: public Shape { public: Circle() { cout << "Circle" << endl; } virtual ~Circle() { cout << "~Circle" << endl; }};int main(int argc, char** argv) { Shape* shape = new Circle(); cout << "Form erstellt" << endl; Form löschen; cout << "Form entfernt" << endl;}
Die Ausgabe dieses Programms ist daher:
ShapeCircleShape erstellt~Circle~ShapeShape entfernt
Die 'Methoden' mit der Tilde (~) davor sind in C Zerstörer. Weil sie virtuell werde der Zerstörer von gestalten genannt nach dem von Kreis genannt worden.