"Variablenübergabe"
-
Hi,
ich habe unter "externe variablen problem" mein problem schon mal gepostet. aber irgendwie bin ich noch auf dem "holzweg".
ich werde mein problem noch mal schildern:
ich habe eine configmenuimpl.h-datei und die dazugehörige .cpp.
diese datei stellt ein kleines menü da, wo ich bei sogenatte checkBoxen ein Haken reinmachen kann oder nicht. Wenn diese gesetzt sind soll jeweils eine Variable auf TRUE oder gegebenfalls auf FALSE gesetzt werden. das ganze soll in funktionen geschehen.eine andere datei tastaturimpl.h und dazugehörige .cpp-datei stellt ein programm da, dass die in oben gesetzten variablen abfragen soll, ob sie nun TRUE oder FALSE sind. das ganze soll auch in funktionen geschehen.
wie und wo muss ich nun die variablen setzen bzw. was muss ich wo implementieren.
danke
bastian
-
Hallo,
du deklarierst die Variablen in den beiden Headerdateien als 'extern'. In _einer_
Implementationsdatei definierst du dann diese Variablen und belegst sie, wenn
erwuenscht, mit einem Startwert vor.Z. B.:
//headerfile1 #ifndef headerfile1H #define headerfile1H extern int foo; //irgendwo ist foo definiert, wo das ist spielt noch keine rolle #endif //headerfile2 #ifndef headerfile2H #define headerfile2H extern int foo; #endif //impl.-datei int foo = 0;
[edit]
Ich nehme mal an, dass du in der Headerdatei 'tastaturimpl.h' nicht auf die
Variablen zugreifst, dann brauchst du sie dort natuerlich auch nicht als
extern zu deklarieren. Du musst die Headerdatei, in welcher sich die extern
Deklarationen befinden, natuerlich auch immer includieren, wenn du auf diese
Variablen zugreifen moechtest.
[/edit]mfg
v R
-
es klappt jetzt.
in der cpp-datei in der ich die variablen definiere, stehen die nur mit datentyp var drin und in der dazugehörigen headerdatei als extern noch dazu.
und in der anderen datei, wo ich die werte abfrage, includier ich nur noch das headerfile von "oben".danke bastian