dynamischer Speicher in Elementen des list containers - elegante Lösung gesucht
-
Hi,
ich möchte gewisse Objekte in einer Liste ablegen, dazu verwende ich den list container. Mein Problem ist, dass die Elemente jeweils dynamischen Speicher verwalten und diesen bei ihrer Auflösung auch freigeben. Leider löscht der list container seine Elemente nicht nur einmal, sondern kopiert diese andauernd umher. Dadurch wird Speicher gelöscht auf den dann aber noch ein Zeiger in Gebrauch ist. Den Speicher will ich ja eigentlich behalten, aber ich weiß nicht wie der list container seine Elemente kopiert. Vielleicht weiß ja jemand von euch wie man so ein Problem elegant lösen kann.
MfG
dielösung
-
dielösung schrieb:
Den Speicher will ich ja eigentlich behalten, aber ich weiß nicht wie der list container seine Elemente kopiert.
Warum nicht? Er kopiert sie nach dem Copyconstructor des jeweiligen Objektes.
Prinzipiell ruft so ein Problem nach boost::shared_pointer, auch wenn volkard das nicht gerne sieht.