Array Vector Class
· Write a class the will emulate (partially) a C++ vector.
· Here is a good overview of a c++ vector: https://www.geeksforgeeks.org/vector-in-cpp-stl/
· What does this mean? Well lets compare the two:
Save your time - order a paper!
Get your paper written from scratch within the tight deadline. Our service is a reliable solution to all your troubles. Place an order on any task and we will take care of it. You won’t have to worry about the quality and deadlinesOrder Paper Now
o Arrays allow us to store like items in contiguous memory locations.
o Vectors do as well.
o Arrays have a fixed size. Array of size 10, cannot store 11 items.
o Vectors will grow to accommodate the new item.
o Arrays use an integer index to access locations (slots or cells) in the array.
o Vectors do as well, but they also have methods (push,pop) to add items (really push_back and pop_back).
· Vectors do many other things (see above link) but we are only going to implement the basics for your first program.
· Write a C++ class that (loosely) implements the functionality of a C++ vector using an array as your storage container.
· Your vector will only need to store integers at this time (we will fix that later).
· It must be variable size:
o Initially, your array container should be sized at whatever size you see fit. However, allocating too much memory is a waste and you will lose points.
o If an item is pushed onto a full array, you will automatically resize the array to 1.5 times its current size, to accommodate the new item.
o If your array container becomes .40 full, you will shrink your container to half its size (unless your at the original allocated size).
§ For example, if you start off with a container of 25, you may go up to 37, 55, 82 , etc., but it’s size will never go below 25.
· It must have push_back and pop_back implemented which adds an item to the end of the array and removes an item from the end of the array respectively.
o What would pushing or popping from the front of the array require?
· Some other methods that might be helpful:
o void print(); // public
o int size(); // public
o double percentFull(); // private
Testing your code
· Write a program that creates an implementation of your vector class and runs the following tests on it:
o Create instance of myvector of size 10 and immediately attempt to pop_back (remove from empty vector).
§ Removing from an empty vector should return false.
o Insert the values 13,31,73 into your vector. Print it out.
o Insert 10000 items into your vector. Print the size of your vector.
o Remove 998 items from your vector. Print the size of your vector.
o Print out your vector.