Kompilatorfel C2084

funktionen 'function' har redan en kropp

Anmärkningar

Funktionen har redan definierats.

Före Visual Studio 2002,

  • Kompilatorn skulle acceptera flera mallspecialiseringar som har matchats till samma faktiska typ, även om de ytterligare definitionerna aldrig skulle vara tillgängliga. Kompilatorn identifierar nu dessa flera definitioner.

  • __int32 och int behandlades som separata typer. Kompilatorn behandlar __int32 nu som en synonym för int. Det innebär att kompilatorn identifierar flera definitioner om en funktion är överbelastad på båda __int32 och int ger ett fel.

Example

I följande exempel genereras C2084:

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

Åtgärda det här felet genom att ta bort dubblettdefinitionen:

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