Unklarer Fehler: base class `...' has incomplete type
-
Hi !
Ich will mein Programm neu strukturieren, d.h. den Code aus einer Datei auf mehrere Dateien verteilen um so Übersicht zu schaffen. Allerdings habe ich ein Problem. Ich bekomme beim kompilieren die Fehlermeldung wie sie im Betreff steht. Leider kann ich damit nichts anfangen. Ich poste mal die wichtigen Teile des Quellcodes und die Fehlermeldung:
LevelInput.h#ifndef _LEVELINPUT_H_ #define _LEVELINPUT_H_ #include <ClanLib/core.h> #include <ClanLib/display.h> #include <ClanLib/gl.h> #include <ClanLib/application.h> class LevelInput { public: bool up; bool down; bool left; bool right; void handleKeyDown( const CL_InputEvent& ); void handleKeyUp( const CL_InputEvent& ); }; #endif
LevelRenderer.h:
#ifndef _LEVELRENDERER_H_ #define _LEVELRENDERER_H_ #include <ClanLib/core.h> #include <ClanLib/display.h> #include <ClanLib/gl.h> #include <ClanLib/application.h> #include "LevelInput.h" class LevelRenderer : public LevelInput { private: bool quit; public: void renderLevel( CL_DisplayWindow* ); void drawGraphics(); void quitGame(); }; #endif
LevelRenderer.cpp ist jetzt glaub ich erstmal nicht wichtig.
Folgende Fehlerausgabe erhalte ich in der Konsole:g++ `pkg-config --cflags clanGL-0.7 clanDisplay-0.7 clanCore-0.7 clanApp-0.7 clanSound-0.7 clanMikMod-0.7 clanVorbis-0.7` `sdl-config --cflags` -c Main.cpp In file included from Game.h:9, from Main.h:9, from Main.cpp:1: LevelRenderer/LevelRenderer.h:9: error: syntax error before `{' token LevelRenderer/LevelRenderer.h:18: error: syntax error before `}' token In file included from Main.h:9, from Main.cpp:1: Game.h:11: error: base class `LevelRenderer' has incomplete type make: *** [Main.o] Fehler 1
Das Problem ist, dass ich die Fehlermeldung nicht verstehe, bzw. ich keinen Fehler in meinem Code erkennen kann.
Würde mich freuen, wenn mir jemand weiterhelfen würde
thx
tom
-
verushc mal bei der basis den Destruktor virtual zu machen, ist aber nur geraten.
-
Dein Quellcode passt meiner Meinung nach nicht zu den Fehlermeldungen bzgl Zeile 9 und Zeile 18. Sieht der Quellcode, den du zu kompilieren versuchst, genau so aus?
-
Hi !
Thx für die Antworten. Jo der Originalcode den ich kompilieren möchte sieht genauso aus. Nen virtuellen Destruktor muss ich noch ausprobieren.