VS报错解决:error:LNK2005 已经在*.obj中定义

问题:

情况是这样的一个全局变量在一个头文件中定义,
比如:head1.h中定义了全局变量

int a = 10;

在另外一个类的头文件class.h中包含了头文件head1.h如:include “head1.h”,并使用extern int a;尝试跨文件使用全局变量

include "head1.h"
extern int a;

编译时报错:main.obj : error LNK2005: "class " 。。。。。已经在*.obj中定义

解决办法:

首先保证无重名变量的重定义出现,然后将定义内容转到head1.cpp 中,解决!

int a = 10;

Guess you like

Origin blog.csdn.net/qq_34935373/article/details/119604126