Предупреждение компилятора (уровень 1) C4005
"идентификатор": макрос переопределение
Идентификатор макроса определяется дважды. Компилятор использует второе определение макроса.
Чтобы устранить ошибку, проверьте указанные ниже возможные причины ее возникновения.
Определение макроса в командной строке и в коде с помощью директивы
#define
.Макросы, импортированные из файлов включения.
Возможные способы устранения этой ошибки
Удалите одно из определений.
Используйте директиву #undef перед вторым определением.
Следующий пример приводит к возникновению ошибки 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;
}