Definition / Deklaration in Header file

hk007:
... Anders gehts nicht?

Pardon, ich habe vorhin Mist erzählt.

Schon die Variante im ersten Posting dürfte nicht funktionieren. Mit „extern int x“ teilst Du dem Compiler mit, dass es diese Variable gibt (und dass sie vom Typ int ist), aber anderswo (extern eben) deklariert wurde. Wenn Du dann im gleichen „scope“ (Sichtbarkeitsbereich) erneut eine Variable mit diesem Namen deklarierst, meckert der Compiler.

Ich deklariere Variablen meistens dort, wo ich sie benötige – und dort werden sie üblicherweise gleich mit einem passenden Wert initialisiert. Die Namen wähle ich möglichst so, dass sofort klar ist, worum es geht. Und weil solche Deklarationen im Code passieren, tauchen Deklarationen in meinen Header-Dateien nur selten auf.

Gruß

Gregor