• 27.04.2024, 04:50
  • Registrieren
  • Anmelden
  • Sie sind nicht angemeldet.

 

Lieber Besucher, herzlich willkommen bei: Aqua Computer Forum. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.

[C++] Selbstzerstörung eines Objektes

Samstag, 16. April 2005, 13:04

Hi!

Kann ich in der Methode eines Objektes dessen Selbstzerstöung veranlassen?

MfG
"I've always said, the Web is the sum of all human knowledge plus porn.", Ron Gilbert
UltraStar Manager 1.7.2 | Infos zu meinem PC | .o0 DeathSpank 0o.

Re: [C++] Selbstzerstörung eines Objektes

Samstag, 16. April 2005, 13:50

indem du den destruktor aufrufst.
aber wenn nach der ausführung des Destruktors noch weiterer Code in der Methode steht, isses schlecht. (ist ja dann weg, das Objekt).

also solltest du das nur in Methoden machen, die keinen Rückgabewert haben (void).

ist aber ganz hässlicher Stil, was hast'n vor?

ich hatte so was ähnliches (aber eher unbeabsichtigt) in dem Menü-System, an dem ich gerade schreibe und habe mich über die Abstürze in meinem System gewundert... lag daran, daß ich zum System gesagt habe: zeig den nächsten Menüscreen und das System dann automatisch einen neuen Screen erstellt hat und mich weggeräumt hat.. ich habe aber nach dieser Anweisung an das Game versucht noch Code auszuführen, war halt ganz schlecht.
pass auf was du da tust  ;)

edit:
oder einfach:
delete this;


edit2:
while((void*)this != NULL)
   delete this;
;D ;D ;D


edit3:
Nachtrag:
wenn du noch irgendwo einen Pointer auf das Objekt hast, und dann versuchst darauf zuzugreifen, wird's haarig... ausserdem solltest du nicht versuchen diesen Pointer wieder zu löschen, das geht auch schief.
Gute work-live-balance ist, wenn man von seinem Privatleben erschöpfter ist als von der Arbeit.

Re: [C++] Selbstzerstörung eines Objektes

Sonntag, 17. April 2005, 01:04

Uhhh.... das klingt derbst unsauber ;D

Ich brauch aber keine Selbstzerstörung mehr - hab's anders gelöst :D

Is auch schade, dass ein gelöschter Pointer nicht genullt wird :) Najo, man muss halt überall aufpassen.

Trotzdem danke!

MfG
"I've always said, the Web is the sum of all human knowledge plus porn.", Ron Gilbert
UltraStar Manager 1.7.2 | Infos zu meinem PC | .o0 DeathSpank 0o.