如下所示,这是一个简单的队列:
template<class T>
class queue //队列
{
private:
int front;
int rear;
int maxsize;
T *que;
public:
queue(int size=0)
{
maxsize=size;
que=new T[maxsize];
front=rear=0;
}
~queue(){delete []que;}
bool empty()
{
return front==rear;
}
bool full()
{
if((rear+1)%maxsize==front)
return 1;
else
return 0;
}
void push(T t)
{
que[rear++]=t;
}
T frontT()
{
if(empty())
{
cout<<"队列为空"<<endl;
return 0;
}
else
return que[front];
}
void pop()
{
front++;
}
};