/* File: queue.C Implementation of a FIFO stack which is derived from our list ADT */ #include #include #include "queue.h" /* default constructor */ Queue::Queue() { } /* destructor */ Queue::~Queue() { } /* add data to the queue */ void Queue::Enqueue(data x) { Append(x) ; } /* remove data from the queue */ data Queue::Dequeue() { position pos ; data x ; pos = FirstPos() ; x = ItemAt(pos) ; Delete(pos) ; return x ; } /* return first element of the queue */ data Queue::Front() { return ItemAt(FirstPos()) ; } /* Is the queue empty? 1=Yes, 0=No */ int Queue::IsEmpty() { return count ? 0 : 1 ; } /* Number of items in the queue */ int Queue::Length() { return count ; }