//--------------------------------------------------------- // list.cpp // // File for a list class based on a linked list. // // D. Searls // REPLACE THIS LINE WITH YOUR NAME!! // Asbury University //--------------------------------------------------------- #ifndef H_LISTCLASS #define H_LISTCLASS #include using namespace std; template class list { private: struct node { itemType info; node* next; }; int n; // The number of elements in the list. node* head; // A pointer to the first node in the list. node* current; // A pointer to the current node. This is used to point to the current node following the invocation of the first() or next() member functions. public: //----------------------------------------------------- // Default Constructor // // Constructs an empty list. //----------------------------------------------------- list() { } //----------------------------------------------------- // Destructor // // Remove all of the items from the list //----------------------------------------------------- ~list() { } //----------------------------------------------------- // Copy Constructor // // Construct a list populated with the same values as // are in the specified list (but not necessarily in // the same order). // // In Parameter: theList //----------------------------------------------------- list(const list& theList) { } //----------------------------------------------------- // push_front // // Insert the specified item at the front of the list. // // In Parameter: item //----------------------------------------------------- void push_front(const itemType& item) { } //----------------------------------------------------- // pop_front // // Remove the first item of the list. //----------------------------------------------------- void pop_front() { } //----------------------------------------------------- // clear // // Remove all of the items from the list. //----------------------------------------------------- void clear() { } //----------------------------------------------------- // size // // Return the number of items in the list. //----------------------------------------------------- int size() { } //----------------------------------------------------- // first // // Return a pointer to the first item in the list (or // end() if the list is empty). // // The functions first(), next(), and end() are meant // to be used to perform a linear traversal of the list. //----------------------------------------------------- itemType* first() { } //----------------------------------------------------- // next // // Return a pointer to the next item in the list (or // end() if there is no next item). // // The functions first(), next(), and end() are meant // to be used to perform a linear traversal of the list. //----------------------------------------------------- itemType* next() { } //----------------------------------------------------- // end // // Return the pointer just past the last element in // the list. // // The functions first(), next(), and end() are meant // to be used to perform a linear traversal of the list. //----------------------------------------------------- itemType* end() { } }; #endif