结构体模板 怎样在类中使用?

来源:百度知道 编辑:UC知道 时间:2024/05/30 02:03:25
#include <iostream.h>
template <class T>
struct Listnode
{
T date;
Listnode * next;
};
class Queue
{
private:
Listnode<T> * front;
Listnode<T> * rear;
int curr_len;
public:
Queue();
void EnQueue(T & item);
};
Queue::Queue()
{
front=rear=NULL;
curr_len=0;
}
void Queue::EnQueue(T & item)
{
Listnode<T> * p;
p=new Listnode;
p->date=item;
if(curr_len==0)
{
front=rear=p;
}
rear->next=p;
rear=p;
}

这关于 链式队列 的问题,
我想把 结构体Listnode 应用于 类Queue 里,但不行,请教高手.

#include <iostream.h>
template <class T>
struct Listnode
{
T date;
Listnode * next;
};
template <class T> //在这地方增加这一行
class Queue
{
private:
Listnode<T> * front;
Listnode<T> * rear;
int curr_len;
public:
Queue();
void EnQueue(T & item);
};
Queue::Queue()
{
front=rear=NULL;
curr_len=0;
}
void Queue::EnQueue(T & item)
{
Listnode<T> * p;
p=new Listnode;
p->date=item;
if(curr_len==0)
{
front=rear=p;
}
rear->next=p;
rear=p;
}