next up previous contents
Elõre: További flexibilitás a C++-ban Fel: Dinamikus objektumok Vissza: Dinamikus objektumok létrehozása

Dinamikus objektumok megszüntetése

Ha new-val dinamikusan hozunk létre objektumokat, akkor a mi felelõsségünk, hogy meg is szüntessük azokat, amikor már nincs rájuk szükségünk. Erre szolgál a delete operátor. Egy nem NULL értékû, tetszõleges objektumra mutató pointerre alkalmazva a delete operátort, aktivizálódik az adott típusú objektumhoz tartozó destruktor és a pointer által megcímzett tárterület felszabadul. A NULL-ra alkalmazott delete operátornak nincs semmi hatása. Fontos, hogy a delete csak a new-val létrehozott dinamikus objektumok megszüntetésére használható. A delete oparátornak is van a new-hoz hasonló alternatív szintaxisa:

        delete objektum [méret]

Megjegyzendõ, hogy a C++ nem definiál memória-karbantartó (garbage collector) rendszert, így az "elvesztett" dinamikus objektumokat nem tudjuk megszüntetni.