Eine Klasse verwenden, bevor sie definiert wird
Verfasst: Fr Jan 20, 2012 10:11 pm
Hallihallöchen,
Ich will ein Objekt der Klasse ini_head in der Klasse ini_column verwenden. ini_head wird dabei im Code erst später definiert als die Klasse ini_column. Wie also kann ich ini_head in ini_column verwenden?
ich kriege diesen kompilierfehler:
Ich will ein Objekt der Klasse ini_head in der Klasse ini_column verwenden. ini_head wird dabei im Code erst später definiert als die Klasse ini_column. Wie also kann ich ini_head in ini_column verwenden?
Code: Alles auswählen
#ifndef INI_PARSER
#define INI_PARSER
namespace ini
{
class iniClass
{
private:
enum ParserState
{
NONE,
HEADER,
COLUMN,
ERROR
};
long int getFilesize(char* filepath);
void println(char* content, int counter);
void println(char* column, int colcount, char* value, int valcount);
char* copyString(char* content, int counter);
public:
class ini_column
{
public:
char* name;
char* value;
ini_column* next;
ini_column* prev;
iniClass::ini_head* head;
ini_column(char* n, char* v);
ini_column(char* n, char* v, ini_column* nextElement, ini_column* previous);
};
class ini_head
{
public:
char* head;
ini_head* next;
ini_head* prev;
iniClass::ini_column* column;
ini_head(char* name);
ini_head(char* name, ini_head* nextElement, ini_head* previous, ini_column* col);
};
iniClass::ini_head* head;
iniClass(char* filepath);
~iniClass();
bool ColumnExists(char* column);
char* getValue(char* head, char* column);
char* parseHead(char* content, int counter);
void parseColumn(char* column, int columnCounter, char* value, int valueCounter, char* head);
bool deleteAllHeads();
bool deleteAllColumns(iniClass::ini_head* hd);
iniClass::ini_head* getHead(char* head);
iniClass::ini_head* getLastHead();
iniClass::ini_column* getLastColumn(iniClass::ini_head* head);
};
};
#endif
MfG Naumsini_parser.h:31:21: error: 'ini_head' in class 'ini::iniClass' does not name a type