Avertissement du compilateur (niveau 1) C4005
'identifier' : redéfinition de macro
L’identificateur de macro est défini deux fois. Le compilateur utilise la deuxième définition de macro.
Pour corriger en vérifiant les causes possibles suivantes
Définition d’une macro sur la ligne de commande et dans le code avec une
#define
directive.Macros importées à partir de fichiers include.
Pour résoudre ce problème, appliquez les solutions possibles suivantes.
Supprimez l’une des définitions.
Utilisez une directive #undef avant la deuxième définition.
L’exemple suivant génère l’erreur C4005 :
// C4005.cpp
// compile with: /W1 /EHsc
#include <iostream>
using namespace std;
#define TEST "test1"
#define TEST "test2" // C4005 delete or rename to resolve the warning
int main() {
cout << TEST << endl;
}