Erreur du compilateur C2084
la fonction 'function' a déjà un corps
La fonction a déjà été définie.
Avant Visual Studio 2002,
Le compilateur accepterait plusieurs spécialisations de modèle qui se sont résolues au même type réel, bien que les définitions supplémentaires ne soient jamais disponibles. Le compilateur détecte maintenant ces plusieurs définitions.
__int32
etint
ont été traités comme des types distincts. Le compilateur traite__int32
maintenant comme synonyme deint
. Cela signifie que le compilateur détecte plusieurs définitions si une fonction est surchargée à la fois__int32
etint
génère une erreur.
Exemple
L’exemple suivant génère l’erreur C2084 :
// C2084.cpp
void Func(int);
void Func(int) {} // define function
void Func(int) {} // C2084 second definition
Pour corriger cette erreur, supprimez la définition dupliquée :
// C2084b.cpp
// compile with: /c
void Func(int);
void Func(int) {}