无法解析的外部命令!!!在线等!!

liuzairenjian 2009-04-22 09:49:50
template<class Etype>
class List_Node
{
public:
List_Node(Etype *l_body);
List_Node(void){}
private:
Etype *m_body;
List_Node<Etype> *m_next;
List_Node<Etype> *m_prior;
};

void InitWorld::Set_Body_Info(Box_Info l_box_info)
{
m_box[l_box_info.ID]=new ODE_Box(l_box_info);
List_Node<Box> *box=new List_Node<Box>(m_box[l_box_info.ID]);//出错!!!!
List_Node<Box> *box=new List_Node<Box>();//这样就没错
}

InitWorld.obj : error LNK2019: 无法解析的外部符号 "public: __thiscall List_Node<class Box>::List_Node<class Box>(class Box *)" (??0?$List_Node@VBox@@@@QAE@PAVBox@@@Z),该符号在函数 "public: void __thiscall InitWorld::Set_Body_Info(struct Box_Info)" (?Set_Body_Info@InitWorld@@QAEXUBox_Info@@@Z) 中被引用

fatal error LNK1120: 1 个无法解析的外部命令
...全文
98 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
goodname 2009-04-22
  • 打赏
  • 举报
回复
模板函数的实现应该在.h里面
liuzairenjian 2009-04-22
  • 打赏
  • 举报
回复
ODE_Box就是Box 打错了。。。。
liuzairenjian 2009-04-22
  • 打赏
  • 举报
回复
ODE_Box就是Box 打错了。。。。。
tangshuiling 2009-04-22
  • 打赏
  • 举报
回复
ODE_Box与Box有继承的关系?如果没有,new List_Node<Box>(m_box[l_box_info.ID]);不能成立
liuzairenjian 2009-04-22
  • 打赏
  • 举报
回复
List_Node<Etype>::List_Node(Etype *l_body)
{
m_body=l_body;
m_next=NULL;
m_prior=NULL;
}
liuzairenjian 2009-04-22
  • 打赏
  • 举报
回复
在InitWorld里已经定义了: static ODE_Box * m_box[10000];
goodname 2009-04-22
  • 打赏
  • 举报
回复
错了,是
List_Node(Etype *l_body);

这个得需要具体实现?
goodname 2009-04-22
  • 打赏
  • 举报
回复
是否提供了class Box的定义了?

64,683

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧