Write the program using C++
Document Preview:
159.234 Assignment 4 Deadline: Thursday 15th May 2014 (23:59) Evaluation: 10 marks which represents 4% of your final grade Late Submission: 0.5 mark deduction per hour (or fraction of hour) it is late Teams: The assignment can be done individually or in teams of up to two people (one assignment per team submitted including all student names in the source code). Purpose: Practice with designing and using template classes, memory allocation. Problem to solve: You will design a template class. The name of the template class is MyVector. The class MyVector is a simplify version of vector that models a dynamic array. You may assume that the type T supports the assignment operator operator=(). MyVector class must have the following private members: int capacity; Capacity is the maximum number of items that can be stored in the MyVector before reallocation occurs. int size; Size is the actual number of items in the MyVector. T *itemPtr; itemPtr is a pointer to an array of items of type T. MyVector class must have the following constructors: MyVector(); Default constructor to create an empty MyVector, where size and capacity are zero and NO memory is allocated for the array. MyVector(int num); Custom constructor that creates MyVector with num items. Each item is initialised by its default constructor. MyVector(const MyVector
& vec); Copy constructor. MyVector class must have destructor: ~MyVector(); Free allocated memory space. MyVector class must have the following Member functions: MyVector
& operator=(const MyVector
& myvec); Assign the items of the MyVector myvec. You should checks for self assignment and allocate memory if needed. T& operator[] (int n); Returns the value at index n. The function checks for range error using assert(). void add(const T& item); Add the items to the end of MyVector, size increase by 1. void clear(); Clear the items in the MyVector, so it is empty. Does not necessarily free memory. 159.234 2014 Semester 1 Assignment 4
int
Attachments: