Probleme mit Memory Leaks



  • Hallo,

    nach dem mein Programm einige Zeit im Debug Modus läuft, bekomme ich ständig Memory Leaks angezeigt, wie z.b.

    Detected memory leaks!
    Dumping objects ->
    {4352} normal block at 0x00ACC470, 26 bytes long.
    Data: < > C0 1D 60 00 09 00 00 00 09 00 00 00 01 00 00 00 {4351} normal block at 0x00AC8740, 20 bytes long. Data: < > C0 1D 60 00 03 00 00 00 03 00 00 00 01 00 00 00

    Allerdings gibt mir der Compiler hier ja keine Auskunft, wo die Fehler im Code auftreten, kann mir jemand sagen wie ich nun herausfinden kann, warum ich die Fehler erhalte ?

    MfG cyber



  • Da hilft nur Schritt für Schritt debuggen-> am besten merken, wann es passiert, checken in welcher Klasse / Funktion und dann weiter einkreisen.

    viel Spaß..



  • TheBigW schrieb:

    Da hilft nur Schritt für Schritt debuggen-> am besten merken, wann es passiert, checken in welcher Klasse / Funktion und dann weiter einkreisen.

    Das Problem ist ja das der Compiler mir die meldungen erst nach beenden des Programmes schmeisst.
    Heisst das sie treten auch dann erst auf ?



  • Du kannst in Deinen *.cpp-Dateien hinter allen ! Include-Direktiven folgendes Makro einfügen:

    #define new DEBUG_NEW
    

    Dann werden bei jeden new (nur im Debug_modus) einige zusätzliche Informationen abgespeichert, so das Deine Fehlermeldung auch etwas informativer wird. Der Debugger gibt dann nämlich mit an, an welcher Stelle im Code die nicht freigegebenen Blöcke erzeugt wurden.



  • Hi!
    Benutzt Du die STL? Die "< >" - Ausgaben sehen nämlich so aus. Die Memory Leaks der STL sollten aber eigentlich nur im Debug-Modus auftreten.


Log in to reply