Supportnet Computer
Planet of Tech

Supportnet / Forum / Anwendungen(Java,C++...)

C++ 6, Globale Variablen





Frage

Wie kriege ich es hin, daß in meinem dialogbasierten Dokoment Variabennamen über das gesamte Progemm hinaus bekannt und bearbeitet werden können. Sie nur als Public zun benennen reicht wohl nicht aus. Ich bekomme dabei immer gegensätzliche Fehlermeldungen vom Compiler! Bis dann Holger

Antwort 1 von Huutsch

Hallo!

So wie Du das schreibst, scheinst Du Mechnismen von C++ und von C zu mischen und durcheinander zu werfen.
Das Schlüsselwort "public" funktioniert nur innerhalb von Klassen, wenn Du also z.B. eine Dokumentklasse (doc_class) hast und in dieser Membervariablen (doc_member) als public deklarierst, dann kannst Du auf diese immer Zugreifen, wenn Du eine Instanz dieser Klasse hast (doc_class.doc_member).
Wenn Du aber eine wirklich globale Variable haben willst, die immer da ist, auch wenn Du keine Instanz von einer Klasse hast, dann geht das nur über Standard-C.
In einem Modul muß diese Variable deklariert werden z.B. "static int my_variable" und in den Modulen, in denen sie benutzt werden soll muß sie als "extern int my_variable" bekannt gegeben werden.
Durch die Deklaration bzw. Bekanntgabe weiß der Compiler, daß es diese Variable gibt, und durch das extern weiß der Linker, daß diese Variable wo anderes (in einem anderen Modul) zu finden ist (nämlich da, wo kein extern dabei steht).

Gruß
Huutsch


Antwort 2 von Holger K

Dank Dir erst einmal Huutsch!
Ich habe so etwas schon geahnt. Es währe so schön einfach gewesen. Na ja, muß ich mir wohl etwas anderes einfallen lassen.

Tschüss Holger

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: