#include "Queue.h" template void Queue::enQ(const EltType& e) { QCell *p = new QCell(e, 0); // construct new cell assert( p!= 0 ); // catch out of memory if( last == 0 ) first = p; // Queue was empty, set front else last->next = p; // else append new cell last = p; // set end }//enQ template EltType Queue::deQ() { assert( first != 0 ); // can't remove - empty EltType e = first->elt; QCell *p = first; first = first->next; delete p; if( first == 0 ) last = 0; // becomes empty return e; }//deQ // Queue class template(!) operations implemented: Queue.ipp, also see Queue.h // http://www.allisons.org/ll/ProgLang/Cplusplus/