Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » VC++ / MFC » Beim Schliessen des Dialoges->Dekonstruktor?

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
23.11.2004, 08:13 Uhr
~chullain
Gast


Hallo,

ich hab da mal ne spezielle Frage an die Experten hier...und zwar, wenn ich in meiner Dialogklasse viele Instanzen von verschiedenen Klassen anlege und dann den Dialog durch CDialog::OnOK schliesse, muss ich da noch vorher alle zuvor angelegte Objekte freigeben oder erledigt das die OnOk-Methode für mich?
...sprich, muss ich mir da am Besten nochmal einen Dekonstruktor basteln, der alle Objekte "zerstört"?

...weil, wenn ich so das Spiel meiner Anwendung im Taskmanager beobachte, fällt mir schon auf, dass er viel Speicher mit längerer Laufzeit in Anspruch nimmt...

gruss,

chullain
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
23.11.2004, 10:27 Uhr
DerDachs



Eigene Variablen die du mit "New" zum beispiel erstellst also Dynamisches oder Pointer..
Also alles was in deiner Anwendung erstellt wird aber zur Kompilierungszeit nicht wirklich bekannt ist, solltest du freigeben.
Wenn du also eine Pointer vorher declarierst und ihm später aber in den Klassen mit (New) Speicher zuweist, solltest du dies freigeben...

Weis aber nicht ob das deine Frage war???
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
23.11.2004, 23:20 Uhr
Devil



Natürlich musst du alle Objekte die du mit new anlegst, auch wieder zerstören.
Destruktor wäre gut, da man ja evtl. nach OnOK noch auf die Daten im Dialog zugreifen will.
Wenn du dich nicht um das Freigeben kümmern willst, dann kannst du für
einfach allokierten speicher std::auto_ptr nehmen, dies ist ein SmartPointer, der sich
dann 'automatisch' zerstört.

Für Array bietet boost was ähnliches.

Devil
--
Intelligenz ist eine Illusion des Menschen
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
26.11.2004, 09:03 Uhr
Raffzen



Ich würde bei dieser Frage nochmal gerne einhacken

Wenn ich einen Dekonstruktor deklariere

wird dieser OnDestroy onder OnOK automatisch aufgerufen?

Raffzen
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ VC++ / MFC ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: