您的位置:首页 > 编程语言 > C语言/C++

c++调试记录:error LINK2005: XXXX已经在 .obj 中定义"

2017-08-01 14:20 302 查看
        当项目代码比较多,文件也比较多的时候,这个问题真的非常棘手,可能会耗费大量的时间来排查错误。

     问题出现的原因:在.h文件中定义了变量。然后A.cpp包含了该.h,B.cpp包含了该.h,于是在链接的时候,生成A.obj,B.obj,但是 .h中定义的变量会在这两个obj中又被定义,所以,导致了这个LINK2005错误。

    解决方法:不要在.h中定义变量!!在.h中只声明函数,类。把具体的实现都必须要放到.cpp中!!!!

     
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐