Compilerfehler C2084
Funktion 'Funktion' hat bereits einen Textkörper
Die Funktion wurde bereits definiert.
Vor Visual Studio 2002
Der Compiler akzeptiert mehrere Vorlagenspezialisierungen, die auf denselben tatsächlichen Typ aufgelöst wurden, obwohl die zusätzlichen Definitionen niemals verfügbar wären. Der Compiler erkennt nun diese multiplen Definitionen.
__int32
undint
wurden als separate Typen behandelt. Der Compiler behandelt__int32
nun als Synonym fürint
. Dies bedeutet, dass der Compiler mehrere Definitionen erkennt, wenn eine Funktion sowohl für beide als auch__int32
int
für einen Fehler überladen ist.
Beispiel
Im folgenden Beispiel wird C2084 generiert:
// C2084.cpp
void Func(int);
void Func(int) {} // define function
void Func(int) {} // C2084 second definition
Um diesen Fehler zu beheben, entfernen Sie die duplizierte Definition:
// C2084b.cpp
// compile with: /c
void Func(int);
void Func(int) {}