情况是这样的
我建了一个基于mfc的win32 console project 测试工程TestPro 测试我的一个类NatTree 类中的m_pHead是 一个字定义的pItem结构体 声明在ProtocolDel.h中(这个头文件还包括一些其他的全局函数 如: check(); delay();的声明和实现) .
我在NatTree.h中#include "ProtocolDel.h" 在工程TestPro.cpp文件中
#include "NatTree.h" 然后 NatTree NatTable=*new NatTree; 生成一个NatTree对象 编译 连接 抱错如下:
TestPro.obj : error LNK2005: "unsigned short __cdecl check(unsigned short *,int)" (?checksum@@YAGPAGH@Z) already defined in NatTree.obj
TestPro.obj : error LNK2005: "void __cdecl delay(unsigned long)" (?Delay@@YAXK@Z) already defined in NatTree.obj
这些都是我在ProtocolDel.h中声明并实现的函数(虽然这里没有用到) 请问是什么问题啊??? 解决马上给分!
我建了一个基于mfc的win32 console project 测试工程TestPro 测试我的一个类NatTree 类中的m_pHead是 一个字定义的pItem结构体 声明在ProtocolDel.h中(这个头文件还包括一些其他的全局函数 如: check(); delay();的声明和实现) .
我在NatTree.h中#include "ProtocolDel.h" 在工程TestPro.cpp文件中
#include "NatTree.h" 然后 NatTree NatTable=*new NatTree; 生成一个NatTree对象 编译 连接 抱错如下:
TestPro.obj : error LNK2005: "unsigned short __cdecl check(unsigned short *,int)" (?checksum@@YAGPAGH@Z) already defined in NatTree.obj
TestPro.obj : error LNK2005: "void __cdecl delay(unsigned long)" (?Delay@@YAXK@Z) already defined in NatTree.obj
这些都是我在ProtocolDel.h中声明并实现的函数(虽然这里没有用到) 请问是什么问题啊??? 解决马上给分!
解决方案 »
- 定义的 static const string m_strDir = "aldjfkdlfj"; 调用时未分配内存空间, 值相应的为空
- ado丢失字符问题
- js调用atl写的activex控件,换另一电脑无法运行
- 控件就是显示不出,请求达人解决
- 高分求CStatic实现动态透明位图
- 最近看windows程序设计,上面有一段话看不懂,请各位大虾解释一下。谢谢。
- 发年终奖了。。。。。
- vs2010编译成功 却exe无法运行
- 请教关于注册表的操作,多谢
- SCSI硬盘上,软件是否能够做到防拷贝?
- InstallShield for vc++6如何装入SERVICE
- 急, 在线等 GetPrivateProfileString()函数在没有装VC的WIN98下执行异常
比如我在Protocol.h中申明: extern check(unsigned short *,int);
然后把check();函数的实现放到 NatTree.cpp中
如果我的另一个类MsgQueue.cpp的实现也要用到pItem 那么是不是只要在#include"ProtocolDel.h"就可以了呢?
你能告诉我上面出错的原因是什么吗? 谢谢!
ProtocolDel.h 还有就是工程本来的文件了 我觉得可以象我之前那样做啊!
比如我在Protocol.h中申明: extern check(unsigned short *,int);
然后把check();函数的实现放到 NatTree.cpp中
如果我的另一个类MsgQueue.cpp的实现也要用到pItem 那么是不是只要在#include"ProtocolDel.h"就可以了呢?
你能告诉我上面出错的原因是什么吗? 谢谢!