subject

For this assignment, you must know how to create a container class template and write its constructors, including a copy constructor and overload the assignment operator '=' and [] operator. You may need to review these in object oriented programming class (Co Sci 840).

Define a class template called List with size and a pointer to an array of data of generic type.

Include a default constructor, a constructor that takes size and allocates memory for an array of size elements of generic type, a copy constructor and a destructor. Define these member functions outside the class definition. When doing so, you must specify the type with:

template //before the function definition

And, you must precede the class with the generic type:

List::List();

Include also resize() to resize the array to a given size and overload operator [] and the assignment operator (=).

Also, define two insert() member functions: insert_front() that inserts an element at the front of the array and insert_back() that inserts an element at the back of the array. To accomplish this, you must first resize the array by calling resize(), which will copy all old elements into the newly instantiated array and then insert the value to be inserted.

Also, define two remove() member functions: remove_front() that removes an element from the front and remove_back() that removes an element from the back. Again, you must resize and then copy all elements except the one being removed.

You will see that while a dynamic array such as this makes it easy to access any given element through its indexes, it's not well suited for insertion and deletion of an element. These operations take too many operations to accomplish.

Test the class in main() with both double type and Date type, where Date is a structure with month, day and year as its integer fields. Instantiate a List of size 5 of both types and have the user enter 5 elements. Display the list.

Then, resize to size 10 and read another 5 elements of both types and print the list again.

Then, test the insert_front() and insert_back(), as well as remove_front() and remove_back() functions by reading a value from the user to insert at front and one to insert at back and print the list, and then remove from both front and back and print the list each time to confirm the operation.

Upload and submit two cpp files: one containing main() and one the function definitions, as well as a header file (.h) for the structure and class definitions.

ansver
Answers: 2

Another question on Computers and Technology

question
Computers and Technology, 22.06.2019 20:00
Need asap write a short paper describing the history and differences between six sigma, waterfall, agile, and scrum models. understanding these models can give you a good idea of how diverse and interesting it development projects can be. describe what the rationale for them is and describe their key features. describe the history behind their development. at least 400 words
Answers: 1
question
Computers and Technology, 23.06.2019 00:50
Representa os dados de um banco de dados como uma coleç? o de tabelas constituídas por um conjunto de atributos, que definem as propriedades ou características relevantes da entidade que representam. marque a alternativa que representa o modelo descrito no enunciado. escolha uma:
Answers: 3
question
Computers and Technology, 23.06.2019 16:30
If i wanted to include a built-in calendar in a document, what option could i select? draw table insert table insert chart quick tables
Answers: 1
question
Computers and Technology, 24.06.2019 17:40
When analyzing data sets, such as data for human heights or for human weights, a common step is to adjust the data. this can be done by normalizing to values between 0 and 1, or throwing away outliers. for this program, adjust the values by subtracting the smallest value from all the values. the input begins with an integer indicating the number of integers that follow. ex: if the input is 5 30 50 10 70 65, the output is: 20 40 0 60 55
Answers: 1
You know the right answer?
For this assignment, you must know how to create a container class template and write its constructo...
Questions
question
Mathematics, 04.01.2021 21:20
question
Mathematics, 04.01.2021 21:20
question
Mathematics, 04.01.2021 21:20
question
Chemistry, 04.01.2021 21:20
question
Mathematics, 04.01.2021 21:20
question
History, 04.01.2021 21:20
question
Mathematics, 04.01.2021 21:20
question
History, 04.01.2021 21:20
Questions on the website: 13722359