请各位大哥们帮帮我 一个C++的连接错误
这是我根按照书上写的一个很简单的数组类
//Array.h
template<class T>
class Array{
protected:
int length;
Array<T>* head;
public:
Array(int n);
Array(const T& a,int n);
Array(const T* a,int n);
Array(const Array<T>& a);
~Array();
void print();
T& operator[](const int n);
};
//Array.cpp
template<class T>
Array<T>::Array(int n)
{
lenth=n;
head=new T[n];
}
template<class T>
Array<T>::Array(const T &a, int n)
{
length=n;
head=new T[n];
for(int i=0;i<n;++i)
head[i]=a;
}
template<class T>
Array<T>::Array(const T *a, int n)
{
length=n;
head=new T[n];
for(int i=0;i<n;++i)
head[i]=s[i];
}
template<class T>
Array<T>::Array(const Array<T> &a)
{
length=a.length;
head=new T[length];
for(int i=0;i<n;++i)
head[i]=a[i];
}
template<class T>
Array<T>::~Array()
{delete [] head;}
template<class T>
void Array<T>::print()
{
for(int i=0;i<length;++i)
cout<<head[i]<<" ";
cout<<endl;
}
template<class T>
T& Array<T>::operator[](const int n)
{
return head[i];
}
//main
int main()
{
aarray<int> a(10,9);
//
}
定义 a采用指针定义没问题,但按上面定义会出现错误:
s.obj : error LNK2019: 无法解析的外部符号 "public: __thiscall Array<int>::~Array<int>(void)" (??1?$Array@H@@QAE@XZ),该符号在函数 _main 中被引用
s.obj : error LNK2019: 无法解析的外部符号 "public: __thiscall Array<int>::Array<int>(int const &,int)" (??0?$Array@H@@QAE@ABHH@Z),该符号在函数 _main 中被引用
D:\data_structure yanweimin\shunxuxianlingbiao\Debug\shunxuxianlingbiao.exe : fatal error LNK1120: 2 个无法解析的外部命令