Question: implement the ListArray ADT (60 points) [the declaration is given in ListArray.h] - implement the following operations: - constructor, assignment operator, destructor - insert, remove,
implement the ListArray ADT (60 points) [the declaration is given in ListArray.h]
- implement the following operations:
- constructor, assignment operator, destructor
- insert, remove, replace, clear
- isFull, isEmpty
- gotoBeginning, gotoEnd, gotoNext, gotoPrior, getCursor
#ifndef LISTARRAY_H #define LISTARRAY_H
#include
using namespace std; #pragma warning( disable : 4290 )
template < typename DataType > class List { public:
static const int MAX_LIST_SIZE = 10; // Default maximum list size
// Constructors List ( int maxNumber = MAX_LIST_SIZE ); // Default constructor List ( const List& source ); // Copy constructor // Overloaded assignment operator List& operator= ( const List& source );
// Destructor virtual ~List ();
// List manipulation operations virtual void insert ( const DataType& newDataItem ) // Insert after cursor throw ( logic_error ); void remove () throw ( logic_error ); // Remove data item virtual void replace ( const DataType& newDataItem ) // Replace data item throw ( logic_error ); void clear (); // Clear list
// List status operations bool isEmpty () const; // List is empty bool isFull () const; // List is full
// List iteration operations void gotoBeginning () // Go to beginning throw ( logic_error ); void gotoEnd () // Go to end throw ( logic_error ); bool gotoNext () // Go to next data item throw ( logic_error ); bool gotoPrior () // Go to prior data item throw ( logic_error ); DataType getCursor () const throw ( logic_error ); // Return data item
// Output the list structure -- used in testing/debugging virtual void showStructure () const;
// In-lab operations void moveToNth ( int n ) // Move data item to pos. n throw ( logic_error ); bool find ( const DataType& searchDataItem ) // Find data item throw ( logic_error );
protected:
// Data members int maxSize, size, // Actual number of data item in the list cursor; // Cursor array index DataType *dataItems; // Array containing the list data item };
#endif
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
