Compartilhar via


Externo

Os objetos e variáveis declaradas como extern declaram um objeto que é definido em outra unidade de tradução ou em um escopo delimitador como tendo vinculação externa.

A declaração de variáveis const com a classe de armazenamento extern força o vínculo externo da variável. Uma inicialização de uma variável extern const é permitida na unidade de tradução de definição. As inicializações das unidades de tradução diferentes da unidade de tradução de definição geram resultados indefinidos.

O código a seguir mostra duas declarações extern, DefinedElsewhere (que se refere a um nome definido em uma unidade de tradução diferente) e DefinedHere (que se refere a um nome definido em um escopo delimitador):

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

Consulte também

Referência

Classes de armazenamento C++

Usando extern para especificar ligação