Fehler während der laufzeit!

Wenn ich mein Programm für 1 - 2 Minutern laufen lasse kommt folgende Fehlermeldung:

Unbehandelte Ausnahme bei 0x77ce15de in OpenGl_Game.exe: Microsoft C++-Ausnahme: std::bad_alloc an Speicherposition 0x0015f280..


Wie kann ich diesen Fehler beheben?


PS: Die Projektdateien findet ihr auf dieser url: http://leaf-dev.de/OpenGl_Game.rar
 
Zuletzt bearbeitet:
Typischerweise solltest du eine Debugversion erstellen, und das Programm dann laufen lassen. Dann bekommst du statt der Speicheradresse normalerweise die Codezeile angezeigt in der das Problem auftritt. Wenn das nicht hilft musst du es in einem Debugger laufen lassen.
 
Das hängt ein bisschen vom Compiler ab, den du benutzt.
Bei vielen Compilern wird das Flag -g benutzt und du musst die Optimierung ausschalten. Eventuell gibt es ein zusätzliches Flag zum Speichern der Symboldaten.
Wenn du Visual Studio benutzt, da gibt es einen extra Menüpunkt "Debug"
Ich würde dir empfehlen, mal das Manual zu deinem Compiler zu lesen, da steht das genau erklärt.
 
Die Exception die du bekommst (std::bad_alloc) wird vom operator new geworfen wenn du dynamisch Speicher reservieren willst, jedoch kein Speicher mehr vorhanden ist. Da ich aber davon ausgehe, dass du keinen Urzeitrechner hast, vermute ich mal du hast irgendwo eine Endlosschleife oder so in der du Unmengen an Speicher umsonst reservierst.

Ich werde mir das Programm aber mal anschauen.

Lg
 
Ich kann dein Programm leider nicht ausführen, mir fehlt irgendeine *.dll-Datei, aber was ich im Code gefunden habe:
Das Problem dürften die Funktionen loop::new_color() und loop::new_rect() sein. Die holen Speicher mit new, dieser wird aber nicht mehr freigegeben. Du musst diesen Speicher wieder mit delete freigeben, sonst reservierst du immer mehr Speicher und irgendwann gibt dir das Betriebssystem keinen mehr.
Das Problem dabei ist, dass new_color() und new_rect() in der Funktion loop::draw_scene() aufgerufen werden und draw_scene() wird ja andauernd aufgerufen. Deshalb kommt der Absturz zustande.

Lg
 

Neue Beiträge

Zurück