subject

You are required to come up with a single header file (IntList. h) that declares and implements the IntNode class (just copy it exactly as it is below) as well as declares the IntList Class interface only. You are also required to come up with a separate implementation file (IntList. cpp) that implements the member functions of the IntList class. While developing your IntList class you must write your own test harness (within a file named main. cpp).

Never implement more than 1 or 2 member functions without fulling testing them with your own test harness. IntNode struct I am providing the IntNode class you are required to use. Place this class definition within the IntList. h file exactly as is. Make sure you place it above the definition of your IntList class. Notice that you will not code an implementation file for the IntNode class. The IntNode constructor has been defined inline (within the class declaration). Do not write any other functions for the IntNode class. Use as is.

struct IntNode {

int data;

IntNode *next;

IntNode(int data) : data(data), next(0) {} };

IntList class Encapsulated (Private) Data Fields

head: IntNode *

tail: IntNode *

Public Interface (Public Member Functions)

IntList(): Initializes an empty list.

~IntList(): Deallocates all remaining dynamically allocated memory (all remaining IntNodes). void display() const: Displays to a single line all of the int values stored in the list, each separated by a space. This function does NOT output a newline or space at the end.

void push_front(int value): Inserts a data value (within a new node) at the front end of the list.

void pop_front(): Removes the value (actually removes the node that contains the value) at the front end of the list. Does nothing if the list is already empty.

bool empty() const: Returns true if the list does not store any data values (does not have any nodes), otherwise returns false. main. cpp test harness for lab

Use this main. cpp file for testing your IntList:

. #include using namespace std; #include "IntList. h" int main() {

//tests constructor, destructor, push_front, pop_front, display { cout << "\nlist1 constructor called"; IntList list1;cout << "\npushfront 10"; list1.push_front(10); cout << "\npushfront 20"; list1.push_front(20); cout << "\npushfront 30"; list1.push_front(30); cout << "\nlist1: "; list1.display(); cout << "\npop"; list1.pop_front(); cout << "\nlist1: "; list1.display(); cout << "\npop"; list1.pop_front(); cout << "\nlist1: "; list1.display(); cout << "\npop"; list1.pop_front(); cout << "\nlist1: "; list1.display(); cout << endl; } cout << "list1 destructor called" << endl; return 0;}

ansver
Answers: 3

Another question on Computers and Technology

question
Computers and Technology, 22.06.2019 11:20
The kurt vonnegut commencement speech, the neiman-marcus chocolate chip cookie recipe, and the get-well emails to the dying boy are examples of select one: a. social engineering b. hoax emails c. email viruses d. worms
Answers: 1
question
Computers and Technology, 23.06.2019 10:00
Hey i just logged on and one of the moderators deleted a bunch of my answers to questions, even though the answers were right and the people it doesn't make sense but if anyone wants to talk about anything just message me lol (this is super random lol)
Answers: 1
question
Computers and Technology, 23.06.2019 22:30
You draw two cards from a standard deck of 52 cards, but before you draw the second card, you put the first one back and reshuffle the deck. (a) are the outcomes on the two cards independent? why?
Answers: 3
question
Computers and Technology, 24.06.2019 01:00
How can the temperature of a room be raised by 5degreesf?
Answers: 1
You know the right answer?
You are required to come up with a single header file (IntList. h) that declares and implements the...
Questions
question
Mathematics, 08.11.2019 17:31
question
Mathematics, 08.11.2019 17:31
question
Mathematics, 08.11.2019 17:31
Questions on the website: 13722362