Du musst sie halt noch deklarieren, in der aktuellen CPP-Datei die du gerade kompilierst und in der du die verwendest.
Also so:
misc.cpp:
misc.h
Code:
#IFNDEF MISC_H
#DEFINE MISC_H
extern int globaldings;
#ENDIF
sonstwas.cpp:
Code:
#include "misc.h"
void methode() {
globaldings++;
}
oder von mir aus
Code:
extern int globaldings;
void methode() {
globaldings++;
}
Der Compiler kann ja sonst nicht ahnen, wenn er am sonstwas.cpp kompilieren ist, dass es sonstwo ein globaldings gibt das ein int ist und überhaupt. Der guckt nämlich immer ausschliesslich die aktuelle cpp-Datei an und nichts anderes.
Im übrigen sind globale Variablen böse und schlechtes Design ;-)
MfG Peschmä
Lesezeichen