Object löschen



  • Hey,

    ich habe grade angefangen C++ zu lernen und ich habe einen Frage zu Objekten. Wenn ich mir ein Objekt meiner eigenen Klasse(Z.B. class Mitarbeiter) erstelle, kann ich es auch irgentwie wieder löschen?

    Mitarbeiter a;
    ...code....
    
    lösche(a);
    


  • Es wird automatisch gelöscht, sobald du den Scope verlässt, zu dem es gehört. Wenn du also z.B. lokal in einer Funktion ein Objekt anlegst, wird es beim Verlassen der Funktion sowieso gelöscht, da brauchst du nix machen.

    Was anderes ist es, wenn du das Objekt dynamisch auf dem Heap anlegst, also mit new/new[]. Dann musst du es auch selbst löschen mit delete/delete[].



  • Du kannst das löschen (wird eher zerstören genannt) auch vorzeitig erzwingen, indem du einfach einen sonst bedeutungslosen Scope benutzt.

    {
    Mitarbeiter a;
    } // hier wird a wieder zerstört
    

Anmelden zum Antworten