C++的template小问题

来源:百度知道 编辑:UC知道 时间:2024/05/25 09:20:52
谁帮我解决一下
#include<iostream.h>
template<class T>
class link
{
T data;
link *next;
public:
link ( T da,link *next){}
};
class intLinkList
{
link *head;
public:
intLinkList()
{
cout<<"Creat link list \n:";
link<int> data;//这里会出错
cin>>data;
}
};

我想你大概想这样吧:
#include<iostream.h>

template<class T>
class link
{
public:
T data;
link *next;
public:
link ( T da,link *next){}
link (){} /////////////这个是构造函数
};

class intLinkList
{
link *head;
public:
intLinkList()
{
cout<<"Creat link list \n:";
link<int> data;
cin>>data.data; /如果不喜欢这样,可以重载>>运算符
}
};

void main()
{
intLinkList tem;
}

link类没有提供默认构造函数,你需要添加构造参数或添加link类的构造函数