Uiuiui. Und nochmal C++ :
Ich habe eine Klasse in einer Datei („host.h“) :
class host
{
private:
static int nrOfObjects; //Diese Variable gibt es nur ein mal pro Klasse...
public:
void egal(void);
int auchEgal;
host(void);
~host(void);
};
und eine Datei mit der Implementierung („host.cpp“):
#include "host.h"
host::host(void)
{
}
host::benutzeVariable(void)
{
norOfObjects++;
//oder auch host::nrOfObjects++;
}
//usw....
Wenn ich auf die Variable „nrOfObjects“ zugreifen will, geht das beim kompilieren gut - Keine Fehler. Der Linker allerdings spuckt mir dann einen Fehler „LNK2001 - Unresolved External“ raus (MS Visual Studio .NET), woraus dann ein Fehler LNK1120 resultiert. Das Programm wird nicht fertig kompiliert. Ich hab mir auch die Hilfe zum Fehler durchgelesen. In der steht statische Variablen habe „File-scope“, sind also nur im entsprechenden file gültig. Aber die Header-Datei wird doch includiert?!
Ich glaube das ist was grundlegendes, allerdings komm ich einfach nicht drauf…
Für Hilfe/Tips wäre ich extrem dankbar!
KIM