Partilhar via


Erro do compilador C2084

função 'função' já tem um corpo

Observações

A função já foi definida.

Antes do Visual Studio 2002,

  • O compilador aceitaria várias especializações de modelo que fossem resolvidas para o mesmo tipo real, embora as definições adicionais nunca estivessem disponíveis. O compilador agora deteta essas várias definições.

  • __int32 e int foram tratados como tipos separados. O compilador agora trata __int32 como sinônimo de int. Isso significa que o compilador deteta múltiplas definições se uma função estiver sobrecarregada em __int32 e int, e dá um erro.

Example

O exemplo a seguir gera C2084:

// C2084.cpp
void Func(int);
void Func(int) {}   // define function
void Func(int) {}   // C2084 second definition

Para corrigir esse erro, remova a definição duplicada:

// C2084b.cpp
// compile with: /c
void Func(int);
void Func(int) {}