globale variablen in externer datei

Bumbbleman

Erfahrenes Mitglied
Hallo!
Ich möchte gerne ein paar globale Variablen in eine Datei auslagern, weil sie in allen anderen gebraucht werden.
Welche Möglichkeiten bieten sich da an?
Danke schon mal im voraus!
 
Hi!
Danke für die Antwort. Ich hab aber jetzt gelsen, dass das ein schlechter Stil und unüblich ist also versuch ich es doch die globalen Variablen zu vermeiden.
Trotzdem Danke!
 
Ja es ist richtig das man soweit wie möglich globale Variablen vermeiden sollte, aber das ist eben nicht immer möglich bzw. bei größeren Softwareprojekten sinnvoll. Stell dir vor einige Module/Plugins greifen auf gleiche Konfigurationen zu z.B. eine Struktur o. ä., dann wäre es ziemlich umständlich diese bei Änderung alle lokal ändern zu müssen. ;-)

mfg
 
Hallo,

Wenn du die Variablen in h-Dateien vermeiden willst, arbeite doch mit extern

es wird ohne extern gar nicht gehen, da ansonsten jedes mal eine neue Variable definiert werden würde sobald der Header irgendwo eingebunden wird. D.h. sobald man eine globale Variable über Modulgrenzen hinweg verwenden möchte muss man extern verwenden.

Desweiteren: Was spricht dagegen die Variable innerhalb eines common Headers zu Verfügung zu stellen? Solange der Header nur in der Software verwendet wird IMHO nichts. Außerdem, um Doppeldeutigkeiten zu vermeiden, kann man doch Namespaces (sowohl in C++, als auch in C) einführen.

Gruß,
RedWing
 
Zuletzt bearbeitet:
Hallo,

ich habe es jetzt mit extern versucht aber ich bekomme dann immer:
Error: Ungelöste externe....
was mach ich falsch?

wenn du eine Variable mit extern deklarierst dann ist das nur eine Bekanntmachung dieser Variable durch den Compiler. Du musst das reale Objekt nat. noch in irgend einer Datei (am besten in der Datei zu der die Variable logisch hinzugehört) ohne das Schlüsselwort extern definieren.

Gruß,
RedWing
 
Zurück