队列是先进先出的结构。
首先贴出Queue类的结构:
class Queue
{
public:
Queue(int sz=10);
bool EnQueue(double x);
bool DeQueue(double & x);
bool IsEmpty() const;
bool IsFull() const;
int GetSize() const;
void MakeEmpty();
~Queue();
protected:
int front;
int rear;
double * m_data;
int m_maxSize;
};
然后是实现
#include "stdafx.h"
#include "Queue.h"
#include <iostream>
#include <assert.h>
using namespace std;
Queue::Queue(int sz)
{
if(sz>0)
{
m_maxSize = sz;
m_data = new double[m_maxSize];
assert(m_data!=NULL);
front=rear=0;
}
}
bool Queue::EnQueue(double x)
{
if(!IsFull())
{
m_data[rear] = x;
//cout<<"You put in "<<x<<endl;