Verständnisfrage zum Destruktor



  • Hallo, Leute!
    Ich habe eine dumme Anfänger-Frage, könnt ihr erfahrene Profis bitte mir antworten? 🙂
    Ich habe eine Form mit Membervariable Bitmap^ Bild. Mit OpenFile_Click wird eine Datei ausgewählt, daraus Bild = gcnew Bitmap gebildet und dann in Form in PictureBox angezeigt. Wenn ich dann das Programm schließe, wird Bild automatisch gelöscht, soweit ich verstehe. Was passiert aber, wenn ich mehrmals auf Button drücke und jedes mal neue Datei auswähle? Dass heißt, es wird immer wieder Bild = gcnew Bitmap ausgeführt. Jetzt weiß ich nicht, was mit all diesen Bitmaps passiert: werden sie automatisch gelöscht? oder soll ich zB nach jedem ButtonClick das Bitmap selber löschen?
    Danke sehr im Voraus!



  • Unbedingt lesen: http://www.c-plusplus.net/forum/263084 ⚠

    o_a.s schrieb:

    Ich habe eine Form mit Membervariable Bitmap^ Bild. Mit OpenFile_Click wird eine Datei ausgewählt, daraus Bild = gcnew Bitmap gebildet und dann in Form in PictureBox angezeigt. Wenn ich dann das Programm schließe, wird Bild automatisch gelöscht, soweit ich verstehe. Was passiert aber, wenn ich mehrmals auf Button drücke und jedes mal neue Datei auswähle? Dass heißt, es wird immer wieder Bild = gcnew Bitmap ausgeführt. Jetzt weiß ich nicht, was mit all diesen Bitmaps passiert: werden sie automatisch gelöscht?

    Ja, du machst hier ja C++/CLI und nicht C++. gcnew allokiert dein Objekt auf dem garbage collected .NET Heap...



  • Danke, dot, alles klar!


Anmelden zum Antworten