这个简单的队列我没运行出来 可能是数据结构的问题 也可能是语法的问题
总之希望大家帮我调试一下 谢谢大家了
#include<iostream.h>
class queue
{
public:
queue():front(0),back(0),size(0){}
queue(int m):front(0),back(0),size(m){}
void push(int i)
{
if(front-back>size)
cout<<"the queue is full"<<endl;
else
{
if(front==back)
{
a[back]=i;
front=front+1;
}
for(int j=back;j<front;j++)
{
a[j]=a[j+1];
a[back]=i;
front=front+1;
}
}
}
int pop()
{
if(front<=back)
return false;
else
{
return a[front-1];
front=front-1;
}
}
bool empty()
{
if(front==back)
return true;
else
return false;
}
void disp()
{
for(int i=back;i<front;i++)
{
cout<<a[i]<<" ";
}
cout<<endl;
}
private:
int back;
int front;
int size;
int a[100];
};
int main()
{
queue x(10);
x.push(3);
x.push(4);
x.push(5);
x.push(6);
x.disp();
return 0;
}