【问题】
>> : error LNK2005: ×××× (★★★★) 已经在 ※※※.obj 中定义
fatal error LNK1169: 找到一个或多个多重定义的符号
【可能的原因】
当第一个使用该头文件的.cpp文件生成.obj的时,int i 已经定义。当另外一个使用这个头文件的.cpp再次[单独]生成.obj的时候,int i 又被定义。然后两个obj被另外一个.cpp也include 这个头的,连接在一起,就会出现重复定义.
【解决】
通常是由于在.h文件里定义了此变量,移动到.cpp文件里即可,并在使用到这个变量的cpp文件中加上extern int ID。
时间: 2025-01-01 20:52:19