首页 > 其他 > 详细

fatal error LNK1169:找到一个或多个重定义的符号

时间:2017-06-06 11:35:59      阅读:314      评论:0      收藏:0      [点我收藏+]

技术分享

这个算是个比较基础的问题,由于我不是C程序员,本行java,临时拉来做的,所以有些坑还得自己走出来。

 

这个问题是由于,全局变量在a.h中定义,在两个源文件a.cpp和b.cpp中引用,之后被编译器认为是重定义。

 

解决办法:

      全局变量要在源文件中声明和定义。a.cpp。

      至于a.cpp中引用的头文件,a.h,需要在定义时加extern。

      b.cpp引用a.h即可。

 

      extern可置于变量或者函数前,以表示变量或者函数的定义在别的文件中,提示编译器遇到此变量或函数时,在其它模块中寻找其定义。另外,extern也可用来进行链接指定。

 

      

fatal error LNK1169:找到一个或多个重定义的符号

原文:http://www.cnblogs.com/rixiang/p/6950570.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!