Extern

Die Objekte und Variablen, die als extern deklariert werden, deklarieren ein Objekt in einer anderen Übersetzungseinheit oder in einem einschließenden Bereich Externe Bindung definiert ist, als seien ihre.

const Deklaration von Variablen mit der extern Speicherklasse erzwingt die Variable, um externe Bindung besitzt.Eine Initialisierung einer extern-const-Variable wird in der definierenden Übersetzungseinheit nicht zulässig.Initialisierungen in den Übersetzungseinheiten Gegensatz zum definierende Definition Übersetzungseinheits aufgehobene erzeugnis resultiert.

Im folgenden Code werden zwei extern Deklarationen, DefinedElsewhere (das einen Namen angibt, der in einer anderen Übersetzungseinheit definierte DefinedHere () und einen Namen verweist, der in einem einschließenden Bereich) definiert wird:

// external.cpp
// defined in another translation unit
extern int DefinedElsewhere;   
int main() {
   int DefinedHere; 
   {
      // refers to DefinedHere in the enclosing scope
      extern int DefinedHere;
    }
}

Siehe auch

Referenz

C++-Speicherklassen

Verwenden von extern, um die Bindung angeben