Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

Questions: - implement the ListArray ADT [the declaration is given in ListArray.h] - implement the following operations: - constructor, copy constructor, assignment operator, destructor; (30

Questions: - implement the ListArray ADT [the declaration is given in ListArray.h] - implement the following operations: - constructor, copy constructor, assignment operator, destructor; (30 pts) - gotoBeginning, gotoEnd, gotoNext, gotoPrior, getCursor; (20 pts)

GIVEN CODE:

ListArray.h:

//-------------------------------------------------------------------- // // Laboratory 3 ListArray.h // **Instructor's Solution** // Class declaration for the array implementation of the List ADT // //--------------------------------------------------------------------

#ifndef LISTARRAY_H #define LISTARRAY_H

#include #include

using namespace std;

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

ListArray.cpp:

#include "ListArray.h"

template < typename DataType > List::List ( int maxNumber ) { }

template < typename DataType > List::List ( const List& source ) { } template < typename DataType > List& List::operator= ( const List& source ) { return *this; }

template < typename DataType > List::~List () { }

template < typename DataType > void List::insert ( const DataType& newDataItem ) throw ( logic_error ) { }

template < typename DataType > void List::remove () throw ( logic_error ) { }

template < typename DataType > void List::replace ( const DataType& newDataItem ) throw ( logic_error ) { }

template < typename DataType > void List::clear () { }

template < typename DataType > bool List::isEmpty () const { return false; }

template < typename DataType > bool List::isFull () const { return false; }

template < typename DataType > void List::gotoBeginning () throw ( logic_error ) { }

template < typename DataType > void List::gotoEnd () throw ( logic_error ) { }

template < typename DataType > bool List::gotoNext () throw ( logic_error ) { return false; }

template < typename DataType > bool List::gotoPrior () throw ( logic_error ) { return false; }

template < typename DataType > DataType List::getCursor () const throw ( logic_error ) { DataType t; return t; }

#include "show3.cpp"

template < typename DataType > void List::moveToNth ( int n ) throw ( logic_error ) { }

template < typename DataType > bool List::find ( const DataType& searchDataItem ) throw ( logic_error ) { return false; }

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Modern Database Management

Authors: Fred R. McFadden, Jeffrey Slater, Mary B. Prescott

5th Edition

0805360549, 978-0805360547

More Books

Students also viewed these Databases questions

Question

Determine miller indices of plane X z 2/3 90% a/3

Answered: 1 week ago