Platzierungssyntax für den Operator new

Aus Appmethod Topics
Wechseln zu: Navigation, Suche

Nach oben zu Die Operatoren New und Delete - Index

Die Platzierungssyntax für den operator new( ) kann nur verwendet werden, wenn Sie den Operator für die Zuweisung mit passenden Argumenten überladen haben. Sie können die Platzierungssyntax benutzen, wenn Sie Speicherplatz verwenden und wiederverwenden möchten, den Sie einmal am Anfang Ihres Programms eingerichtet haben.

Wenn Sie den überladenen operator new( ) verwenden, um festzulegen, wo Sie eine Zuweisung platzieren möchten, sind Sie selbst für das Freigeben der Zuweisung verantwortlich. Weil Sie Ihre Version des Zuweisungsoperators aufrufen, hängt das Bereinigen nicht von dem globalen ::operator delete( ) ab.

Um Speicher freizugeben, rufen Sie den Destruktor explizit auf. Diese Methode zum Bereinigen von Speicher sollte nur in speziellen Situationen und mit großer Vorsicht verwendet werden. Wird ein Destruktor explizit aufgerufen, bevor ein auf dem Stack erstelltes Objekt den Gültigkeitsbereich verlässt, dann wird der Destruktor erneut aufgerufen, wenn die Bereinigung des Stack-Frame durchgeführt wird.

Siehe auch