ESP Error ...
-
In meinem Programm habe ich in einer Header-Datei, mehrere "struct" definiert.
Das klappt soweit. Jetzt habe ich eine "struct" hinzugefügt, und das Programm
stürzt ab. Mit folgender Fehlermeldung:Debug Error!
Programm c:\Projekte\GLisp\Debug\GLisp.exe
Module:
File i386\chkesp.c
Line 42
The value of ESP was not properly saved across a function call. This is
usually a result of calling a function declared with one calling
convention with a function pointer declared with a different calling
convention.Später habe ich diesen struct in eine neue Klasse ausgelagert. Das geht.
Folgende "struct"
struct Vektor2
{
short Zuege[7];
short Zuegelevel;
};
-
[quote="GeorgC++"Später habe ich diesen struct in eine neue Klasse ausgelagert. Das geht.[/quote]
Das ist eher Zufall. Eine Deklaration einer Klasse oder Strktur löst keine derartigen Fehler. Ein wenig Code wäre gut.
-
Ich habe mein obiges Problem gelöst.
Und zwar habe ich ein globales Objekt angelegt:
CGrund GRU;
und dies einer Funktion übergeben:
ZeichneBrettt( ..., GRU, ...);
Die Klasse CGrund enthält eine grosse Datenmenge.
Diese kann der Funktion deswegen nicht übergeben werde.
Die Lösung:
Ich übergebe der Funktion einen Zeiger auf das Objekt ( GRU )
ZeicheneBrett( ..., &GRU, ...);
Und Tschüss ...