Memoryleak - Frage
-
Hi.
Habe folgenden Code:void bla() { Timer_s *arrTimers[128]; // ... for (int i = 0; i < this->m_vecTimers.count(); i++) { arrTimers[i] = this->m_vecTimers[i]; } // ... }Wie man sieht habe ich ein temporären Array in das instanzierte Objekte eingefügt werden. Die Objekte brauche ich weiterhin, das Array arrTimers jedoch nicht. Muss ich nun irgendwelche Aufräumarbeiten machen? AFAIK lösche ich mit delete[] auch alle Objekte im Array selbst was ich ja nicht möchte.
Gruß
-
Warum kopierst du einen Vektor in ein normales Array ?
Eigentlich musst du nichts aufräumen, du musst halt aufpassen dass du immer eine Adresse deines Timers hat um den Destruktor aufzurufen.
-
Hast du das Array mit new angefordert? Nein! Also darfst du es auch nicht mit delete freigeben.