globale Variablen
-
Servus,
hab da ein ansich total triviales Problem. Umso schlimmer, das ich nicht drauf komme. Ich reduzier es einfach mal auf einige Zeilen code:
test.cpp:
#include "test2.h" #include <iostream> using namespace std; int main() { cout << text << "\n"; return 0; }
test2.cpp:
#include "test2.h" #include <iostream> using namespace std; char* text = "Test"; int printtext() { cout << text << "\n"; return 0; }
Die test2.h kann leer sein.
Wenn ich den Spass compiliere, sagt er mir immer, dass 'text' in test.cpp nicht deklariert ist. Wenn ich aber jetzt text in der test.cpp deklariere und aus der text2.cpp heraus nehme (möchte sie ja nur einmal global deklarieren). Kommt die selbe Fehlermeldung (eben entsprehen anders herrum).
Wo muss ich denn text jetzt global definieren/deklarieren, damit das funktioniert?
Nacht
-
Dafuer ist das wunderschoene Schluesselwort extern geschaffen, um Variablen aus anderen sourcen nutzen zu koennen.
Also#include "test2.h" #include <iostream> using namespace std; extern char* text; int main() { cout << text << "\n"; return 0; }