text cover

Data Abstraction and Problem Solving with C++

Walls and Mirrors

by Frank M. Carrano

Addison Wesley Logo

Queue Class Reference

#include <QueueP.h>

List of all members.


Detailed Description

ADT queue - Pointer-based implementation.

Definition at line 22 of file QueueP.h.

Public Member Functions

 Queue ()
 Queue (const Queue &Q)
 ~Queue ()
bool isEmpty () const
void enqueue (const QueueItemType &newItem) throw (QueueException)
void dequeue () throw (QueueException)
void dequeue (QueueItemType &queueFront) throw (QueueException)
void getFront (QueueItemType &queueFront) const throw (QueueException)

Private Attributes

QueueNodebackPtr
QueueNodefrontPtr

Classes

struct  QueueNode


Constructor & Destructor Documentation

Queue::Queue  ) 
 

Default constructor.

Definition at line 24 of file QueueP.cpp.

Queue::Queue const Queue Q  ) 
 

Copy constructor.

Parameters:
Q The Queue to copy.

Definition at line 28 of file QueueP.cpp.

Queue::~Queue  ) 
 

Destructor.

Definition at line 32 of file QueueP.cpp.

References backPtr, dequeue(), frontPtr, and isEmpty().


Member Function Documentation

bool Queue::isEmpty  )  const
 

Determines whether this queue is empty.

Precondition:
None.
Postcondition:
None.
Returns:
True if this queue is empty; otherwise returns false.

Definition at line 39 of file QueueP.cpp.

References backPtr.

Referenced by dequeue(), and ~Queue().

void Queue::enqueue const QueueItemType newItem  )  throw (QueueException)
 

Inserts an item at the back of this queue.

Precondition:
newItem is the item to be inserted.
Postcondition:
If the insertion is successful, newItem is at the back of this queue.
Exceptions:
QueueException If memory allocation fails.

Definition at line 44 of file QueueP.cpp.

References Queue::QueueNode::item, and Queue::QueueNode::next.

Referenced by main().

void Queue::dequeue  )  throw (QueueException)
 

Dequeues the front of this queue.

Precondition:
None.
Postcondition:
If this queue is not empty, the item that was added to this queue earliest is deleted.
Exceptions:
QueueException If this queue is empty.

Definition at line 73 of file QueueP.cpp.

References backPtr, frontPtr, isEmpty(), and Queue::QueueNode::next.

Referenced by ~Queue().

void Queue::dequeue QueueItemType queueFront  )  throw (QueueException)
 

Retrieves and deletes the front of this queue.

Precondition:
None.
Postcondition:
If this queue is not empty, queueFront contains the item that was added to this queue earliest, and the item is deleted.
Exceptions:
QueueException If this queue is empty.

Definition at line 94 of file QueueP.cpp.

void Queue::getFront QueueItemType queueFront  )  const throw (QueueException)
 

Retrieves the item at the front of this queue.

Precondition:
None.
Postcondition:
If this queue is not empty, queueFront contains the item that was added to this queue earliest.
Exceptions:
QueueException If this queue is empty.

Definition at line 107 of file QueueP.cpp.


Member Data Documentation

QueueNode* Queue::backPtr [private]
 

Definition at line 85 of file QueueP.h.

Referenced by dequeue(), isEmpty(), and ~Queue().

QueueNode* Queue::frontPtr [private]
 

Definition at line 86 of file QueueP.h.

Referenced by dequeue(), and ~Queue().


The documentation for this class was generated from the following files:

Generated on Sun Aug 27 17:20:20 2006 for AWLogo by  doxygen 1.4.6