subject_19274.htm
来自「一些关于vc的问答」· HTM 代码 · 共 12 行
HTM
12 行
<p>
序号:19274 发表者:海风 发表日期:2002-10-27 15:55:29
<br>主题:error LNK2005 如何定义一个全局变量?
<br>内容:inking...<BR>ContrlDBDlg.obj : error LNK2005: "struct LOGININFO Loginfo" (?Loginfo@@3ULOGININFO@@A) already defined in ContrlDB.obj<BR>LoginDlg.obj : error LNK2005: "struct LOGININFO Loginfo" (?Loginfo@@3ULOGININFO@@A) already defined in ContrlDB.obj<BR>MyAsyncSocket.obj : error LNK2005: "struct LOGININFO Loginfo" (?Loginfo@@3ULOGININFO@@A) already defined in ContrlDB.obj<BR>Debug/ContrlDB.exe : fatal error LNK1169: one or more multiply defined symbols found<BR>Error executing link.exe.<BR><BR><BR>typedef struct <BR>{<BR> CString m_DBName;<BR> CString m_PassWord;<BR> UINT m_Port;<BR> CString m_SrvAd;<BR> CString m_UsrName;<BR>}LOGININFO;<BR><BR>LOGININFO Loginfo;<BR><BR>class CMyAsyncSocket : public CAsyncSocket<BR>{<BR><BR>}<BR><BR>另一头文件 <BR>// ContrlDBDlg.h : header file<BR>//<BR>#include "MyAsyncSocket.h"<BR>#include "LoginDlg.h"<BR>#include "RryDlg.h"<BR>#include "ListDlg.h"<BR><BR>class CContrlDBDlg : public CDialog<BR>{<BR>// Construction<BR>public:<BR> CContrlDBDlg(CWnd* pParent = NULL); // standard constructor<BR> int OnConnect();<BR> CString MakePassword();<BR> void MakeMsgPg(char* strSQL,unsigned long *tp,unsigned long *SQLlen);<BR>public:<BR> CLoginDlg LoginDlg;<BR> CRryDlg TryDlg;<BR> CMyAsyncSocket m_clientSocket;<BR> CListDlg ListDlg; <BR>}<BR><BR>如果我把 LOGINIFOF Logininfo 移到其它CPP文件中 那么就只有在那个文件中有效<BR>其它CPP文件中用到Logininfo的话就说没定义 为什么? 这不是全局量么?<BR>我把他移到 theApp全局变量的下面也不行 为什么? 为什么theApp就能在其文件中有效?我的不行 <BR>头痛 <BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR>
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
<font color=red>答案被接受</font><br>回复者:凯凯 回复日期:2002-10-27 16:51:30
<br>内容:反它的定义移到 theApp全局变量的下面。<BR>在需要用到它的CPP文件前面加上这句。<BR>extern LOGININFO Loginfo<BR>就可以了。<BR><BR>记得给分。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?