E2303 Typname erwartet
-
<main.h>
#ifndef xpackH #define xpackH ... #include "utilities.h" ... //--------------------------------------------------------------------------- class TF_Main : public TForm { __published: .... private: .... OperatorManager *_operatorManager; Utilities *_util; ... public: .... }; #endif<utilities.h>
#ifndef utilitiesH #define utilitiesH ... //--------------------------------------------------------------------------- class Utilities { public: Utilities(); ~Utilities(); ... }; #endifWenn ich main.h kompiliere, ist es gar kein Problem. Aber wenn ich utilities.h kompiliere, bekomme ich immer die folgende Fehlermeldungen in main.h:
[c++ Error] main.h (1266): E2303 Typname erwartet
[c++ Error] main.h (1266): E2139 in Deklaration fehlt;kennt jemand zufällig den Grund? Vielen Dank!
-
Vielleicht gegenseitige includes? Such doch mal nach forward declaration.
Gruß,
Alexander
-
Stimmt. Ich habe schon mal nach forward declaration nachgeguckt. Der Fehler ist aufgetreten, weil class Utilities undirekt include von "main.h" hat.
Danke!