编译器警告(等级 1)C4005
“identifier”: 宏重新定义
该宏标识符定义了两次。 编译器使用第二个宏定义。
通过检查以下可能的原因进行修复
使用
#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;
}