Statische variable in einer Header-Datei

Statische variable ' file scope. Sagen, ich habe zwei folgenden Dateien bestehen:

  • Datei1.h
  • file1.cpp
  • Datei2.h
  • file2.cpp

Habe ich static deklarierte variable sagen static int Var1 sowohl in der header-Dateien. Beide file1.h und file2.h sind enthalten in main.cpp Datei.

Ich Tat dies, da die statische variable wird im Datei-Bereich, damit es nicht in Konflikt zueinander.
Aber nach dem kompilieren habe ich gefunden, es zeigt den Konflikt.

Nun statische variable verhält sich wie eine extern variable. Auf der anderen Seite, wenn ich erklären die statische variable in beiden .cpp-Dateien, kompiliert er auch.

Ich bin nicht in der Lage, dieses Verhalten zu verstehen.

Kann jeder Körper erklären, wie Umfang und Verknüpfung der Arbeit in diesem Szenario.

InformationsquelleAutor Chris_vr | 2011-02-18
Schreibe einen Kommentar