Provide the missing housekeeping functions copy constructor


1. Provide a fully generic version of the class NodeList of Code Fragment 6.9 using a templated class.

2. Provide the missing housekeeping functions (copy constructor, assignment operator, and destructor) for the class NodeList, which was presented in Code Fragment 6.9.

Code Fragment 6.9: Class NodeList realizing the C++-based list ADT.

To keep the code simple, we have not implemented any error checking. We assume that the functions of Code Fragment 6.8 are defined outside the class body. Because of this, when referring to the nested class Iterator, we need to apply the scope resolution operator, as in NodeList::Iterator, so the compiler knows that we are referring to the iterator type associated with NodeList.

Observe that the increment and decrement operators not only update the position, but they also return areference to the updated position. This makes it possible to use the result of the increment operation, as in "q = ++p." Having defined the supporting structures Node and Iterator, let us now present the declaration of class NodeList, which is given in Code Fragment 6.9. The class declaration begins by inserting the Node and Iterator definitions from Code Fragments 6.6 and 6.7. This is followed by the public members, that consist of a simple default constructor and the members of the list ADT.We have omitted the standard housekeeping functions from our class definition. These include the class destructor, a copy constructor, and an assignment operator. The definition of the destructor is important, since this class allocates memory, so it is necessary to delete this memory when an object of this type is destroyed. We leave the implementation of these housekeeping functions as an exercise (R-6.12).

Solution Preview :

Prepared by a verified Expert
Basic Computer Science: Provide the missing housekeeping functions copy constructor
Reference No:- TGS01281800

Now Priced at $20 (50% Discount)

Recommended (98%)

Rated (4.3/5)