webbrowser.obj : error LNK2005: "char * ga" (?ga@@3PADA) already defined in MainFrm.obj
webbrowserView.obj : error LNK2005: "char * ga" (?ga@@3PADA) already defined in MainFrm.obj
Debug/webbrowser.exe : fatal error LNK1169: one or more multiply defined symbols found
用向导创见了单文档的程序,在mainfrm.h中加入全局变量 char ga【255】,在webbrowserView.cpp,mainfrm.cpp中要使用,结果就报上面的错了 在webbrowserView.cpp,mainfrm.cpp前,都要include mainfrm.h,所以说我重复定义了??那在mainfrm.h下面的东西多着呢,为什么其他的不算重复定义??
还有,如果我要实现我的目的:在webbrowserView.cpp,mainfrm.cpp中要使用ga这个全局变量,我因该把它放在哪里定义才正确呢? 如果大家听不明白,看看我的附件吧,我说的程序就在里面。
http://ishare.iask.sina.com.cn/cgi-bin/fileid.cgi?fileid=3462964
webbrowserView.obj : error LNK2005: "char * ga" (?ga@@3PADA) already defined in MainFrm.obj
Debug/webbrowser.exe : fatal error LNK1169: one or more multiply defined symbols found
用向导创见了单文档的程序,在mainfrm.h中加入全局变量 char ga【255】,在webbrowserView.cpp,mainfrm.cpp中要使用,结果就报上面的错了 在webbrowserView.cpp,mainfrm.cpp前,都要include mainfrm.h,所以说我重复定义了??那在mainfrm.h下面的东西多着呢,为什么其他的不算重复定义??
还有,如果我要实现我的目的:在webbrowserView.cpp,mainfrm.cpp中要使用ga这个全局变量,我因该把它放在哪里定义才正确呢? 如果大家听不明白,看看我的附件吧,我说的程序就在里面。
http://ishare.iask.sina.com.cn/cgi-bin/fileid.cgi?fileid=3462964
解决方案 »
- 求VC++6.0使用教程,尤其是调试这块的
- 请问除了microsoft.com,哪有新的Microsoft Platform SDK download ?QQ:117274539
- 在evc下,新建对话框类出错!
- 请问什么是ace,和winsocket有什么不同,我刚接触这块,请高手说说
- 简单多线程问题(在线等待)
- 图形平滑?
- 请推荐几个有原码下载的网站,最好和多媒体有关,谢谢
- 如何用vc做出3D图形程序?有人会吗?
- 请教各位一个问题,关于串口通信的 十万火急呀!!!!
- 各位:你们是怎样调试网络程序的?我感觉自己象纺织工一样,来回在两台机子之间穿梭
- MFC中TAB控件如何使用?可以像.NET中一样直接设置页标签内容吗?
- 字符串问题
我本来篇文章http://blog.vckbase.com/arong/archive/2004/05/28/294.aspx但是访问不了啦。一个全局变量应该在cpp文件定义,然后在头文件用extern关键字声明
cpp中char * g_pMyVar=NULL;h中extern char * g_pMyVar;
在stdafx.h里声明extern int var;
extern char* ga;
其中一个cpp文件中定义变量:
char* ga;
如果你在头文件中定义全局变量,如果这个文件被不同cpp文件包含,则他会在每个cpp文件中定义一个拷贝,导致重复定义(所谓包含等于把该文件插入到对应的cpp文件中)
在Stdafx.h内定义extern char ga[255];
然后再从你的某个.cpp里面定义char ga[255];
我不知道你用的是否是VC2003 你可以直接在.CPP 文件的最开始直接定义 char...而不必在.h文件中 定义 另外重复定义还有另外一种情况 这个可能与你这个无关 就是你的头文件a.h里定义了一个 完后另一个头文件b.h包含了这个a.h头文件 而在b.h中你又定义了刚才定义那个 这样也会出错