登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

浩哥的休息时间

喝杯茶,静一静 ^_^

 
 
 

日志

 
 

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

2009-09-18 12:32:29|  分类: V S 编程 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |


申明全局变量,全局函数一定要在cpp中申明

其他类引用该全局变量就include该cpp的h文件

然后extern一下就好了

否则容易出现该重复定义错误

这个"容易"是如何解释的呢?

例如A.h中如果申明了全局变量int Global;

在B.h中include "A.h"

              extern int Global;

则你include A.h相当于把A.h中全局变量的申明也include进来了,编译器就会认为是重复定义

所以全局变量和函数申明一定要在cpp中

当.h文件里有函数实现时
VS2005编译器报此错误,
解决方法
1.在.h里的函数声明前加 inline
2.在项目->属性->链接器->命令行->附加选项中加   /force  

  评论这张
 
阅读(2483)| 评论(0)

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018