Memoryleaks finden...
-
Hallo,
ich glaube, ich habe Probleme mit Memoryleaks (zumindest sieht es so aus).
Wenn ich mein Konsolenprogramm beende bekomme ich unter WinXP immer so eine nette Meldung:Fehler in Anwendung - Die Anweisung in '"0x00428ff9" verweist auf Speicher in "0xfffffffc". Der Vorgang "written" konnte nicht auf dem Speicher durchgeführt werden" Klicken Sie auf OK ...uswNun bin ich den Sourcecode 3 Mal durchgegangen und ich bin der Meinung, dass alle Objekte die ich mit new erzeuge auch wieder zerstört werden...
Malloc nutze ich nicht, nur new und delete...
Meine Frage ist, gibt es (freie) Tools zum aufstöbern solcher Programmierfehler?
Ich nutze MinGW Studio...der Debugger gefällt mir aber nicht so gut.Gruss
R
-
na ja.. der debugger ist in solchen fällen dein freund.
damit lokalisierst du die stelle, an der dein programm "abrauscht".
-
Ein verfehlter Schreibzugriff deutet eigentlich weniger darauf hin dass ein delete vergessen wurde, mehr darauf, dass ein bereits gelöschter oder nicht-initialisierter Zeiger dereferenziert wurde...
-
"Beobachte" einfach mal den Pointer im Debugger und schau wo der falsche Wert herkommt, ich denke nicht die möchtest auf 0xfffffffc schreiben, eventuell ist der Pointer gar nicht initalisiert oder der Wert wurde ausversehen überschrieben (z.B. durch einen Zugriff über ein Array hinaus).
Gruß
-
--gelöscht--