Errore del compilatore C2084
la funzione 'function' ha già un corpo
La funzione è già stata definita.
Prima di Visual Studio 2002,
Il compilatore accetterebbe più specializzazioni di modello risolte nello stesso tipo effettivo, anche se le definizioni aggiuntive non sarebbero mai disponibili. Il compilatore rileva ora queste più definizioni.
__int32
eint
sono stati trattati come tipi separati. Il compilatore ora considera__int32
come sinonimo diint
. Ciò significa che il compilatore rileva più definizioni se una funzione è in overload sia__int32
su eint
che restituisce un errore.
Esempio
L'esempio seguente genera l'errore C2084:
// C2084.cpp
void Func(int);
void Func(int) {} // define function
void Func(int) {} // C2084 second definition
Per correggere l'errore, rimuovere la definizione duplicata:
// C2084b.cpp
// compile with: /c
void Func(int);
void Func(int) {}