Compartilhar via


Erro do compilador C2011

'identificador' : redefinição de tipo 'type'

O identificador já foi definido como type. Verifique se há redefinições do identificador.

Você também poderá obter C2011 se importar um arquivo de cabeçalho ou biblioteca de tipos mais de uma vez para o mesmo arquivo. Para evitar várias inclusões dos tipos definidos em um arquivo de cabeçalho, use proteções ou uma diretiva #pragmaonce no arquivo de cabeçalho.

Se precisar encontrar a declaração inicial do tipo redefinido, você poderá usar o sinalizador do compilador /P para gerar a saída pré-processada passada para o compilador. Você pode usar ferramentas de pesquisa de texto para encontrar instâncias do identificador redefinido no arquivo de saída.

A amostra a seguir gera o erro C2011 e mostra um meio de corrigi-lo:

// C2011.cpp
// compile with: /c
struct S;
union S;   // C2011
union S2;   // OK