大哥大姐帮帮忙啊
//linklist.h
#ifndef LINKLIST_H
#define LINKLIST_H
#include "utility.h"
template< class ListEntry >
class LinkList
{
public:
//构造函数
LinkList();
...........
//linklist.cpp
#include "linklist.h"
//
template< class ListEntry >
LinkList< ListEntry >::LinkList():head( NULL ), count( 0 )
{
}
..............
//main.cpp
#include<iostream>
#include "linklist.h"
using namespace std;
int main()
{
LinkList< int > lst;
return 0;
}
却始终出现main.obj : error LNK2001: unresolved external symbol "public: __thiscall LinkList<int>::LinkList<int>(void)" (??0?$LinkList@H@@QAE@XZ)的错误
把构造函数定义移到类里就对了,为什么啊?模板定义也在类的作用域里啊...
[解决办法]
那就放进去吧,不要将接口和实现分离
现在的编译器对模板支持的不好,不是你个人的原因
[解决办法]
建议你看一下 <C++template 中文版>
第六章的:模板实战,里面讲的清楚