Reference no: EM132208344
Write Program In C++
Introduction In this project, you are asked to design and implement a class for double link list to hold integers:
- The class should be called DList, you also need a class called Node that contains an int as the data
- DList needs a head and tail, both should be pointers to Node, and initialized to NULL
- DList needs a default constructor (no parameter), a copy constructor (take const DList & as input)
- DList needs the following public functions:
void PushFront(int a); //create a Node containing a //and add it to the front of the list
void PushEnd(int a); //create a Node containing a //and add it to the end of the list
Node* PopFront(); //popping out the first Node of the list, //if the list is empty, return NULL
void PopEnd(); //popping out the last Node of the list, //if the list is empty, return NULL
- Node needs the following data:
int data; //the data held by the node
Node* parent; //the parent of the Node
Node* child; //the child of the Node
Node needs the following public function:
Node(int)// constructor to create a Node with the input int
int GetData(); // return the int held by the Node 2
Files to turn in:
You need to turn in four files: makefile, main.C, DList.C, DList.h. Among them, you need to use the main.C provided from the class web site which you cannot modify at all.
DList.h declares the class DList and Node. You can make DList the friend of Node so it can access the private data of the Node.
Functions:
All member function and operator prototypes are declared in xArray.h, with necessary comments before each function. The following are major functions:
- PushBack function is the core of this project, and should be used by other functions if necessary (for example, it can be used by the += and >> operators).
This function put the integer at the end of the array.
Since the array may not have enough space to hold it, you need to grow the array if necessary.
- [ ] operator should check the boundary of data, if idx is not within the boundary, print error message and exit the program; otherwise, return data[idx];
- >> operator should read in an integer and put it at the end of the array.