#include
#include
using namespace std;
const int maxsize=10;
template
class LinkQueue
{
public:
LinkQueue();
~LinkQueue()
{}
bool EnQueue( const T &item);//入队操作
bool DeQueue( T & item);//出队操作
bool empty()//判断对是否为空
{
return items==0;
}
bool isfull()//判断对是否为满
{
return items==maxsize;
}
private:
class Node
{
public:
T item;
Node *next;
Node(){ item=10;next=NULL;} //这里重点
Node(const T &x):item(x),next(0)
{
}
T get_item(){return item;} //这里重点
};
Node *rear;
Node *front;
int items;
};
template
LinkQueue
{
Node *s=new Node;
s->next=NULL;
front=rear=s;//定义头节点;
items=0;
}
template
bool LinkQueue
{
Node *data=new Node(item);
data->next=NULL;
rear->next=data;
rear=data;
items++;
}
template
bool LinkQueue
{
if(front==rear)
return 0;
else
{
Node*p=front->next;
item=p->get_item();
front->next=p->next;
if(p->next==NULL)
rear=front;
delete p;
items--;
return 1;
}
}
int main()
{
LinkQueue
string s;
while(!Q.isfull())//队不满,入队
{ //这里重点
cout<<"入队"< cout<<"请输入字符串"< getline(cin,s); Q.EnQueue(s); } //这里重点 cout<<"队列已满"< while(!Q.empty())//队不空,出队 { Q.DeQueue(s); cout< } }
你问问题的时候 请把编译器提示的错误同时发出来 这样有助于别人帮你定位错误
有乱码,检查一下吧