Question: Please Implement the functions using either arrays or vectors while using the main function to test the program. This is the GildedRose.h file that needs

Please Implement the functions using either arrays or vectors while using the main function to test the program.

Please Implement the functions using either arrays or vectors while using the

This is the GildedRose.h file that needs to be implemented

main function to test the program. This is the GildedRose.h file that

This is the main.cpp file that has the assertEquals function at the end

needs to be implemented This is the main.cpp file that has the

assertEquals function at the end Introduction Hi and welcome to team Gilded

Introduction Hi and welcome to team Gilded Rose. As you know, we are a small inn with a prime location in a prominent city ran by a friendly innkeeper named Allison. We also buy and sell only the finest goods You are provided a listing of items from the latest shipment to the Gilded Rose with each items name, sell in value, and quality. The sell in value is based on gold coins (there is no fraction of a coin). The store wants you to build a program that is able to store each item in an internal list and later retrieve the information in a number of ways Objective You are given a partial implementation of one header file, GildedRose.h. Item is a class that holds the information for each item for the inn. GildedRose is a class that holds an internal listing of many Item objects. This inventory should hold at least 10 items. For this you can use arrays, the std: array class, or even the vector class Complete the implementation of these classes, adding public/private member variables and functions as needed. You should cho with an unknown size known only at runtime. Your code is tested in the provided main.cpp ose an appropriate data structure to maintain this inventory You will need to implement the following functions Constructors/Destructors - Initialize your data. Allocate memory if using a native array. The destructor should deallocate memory if using a native array size() - This should return the number of items currently for sale (this is different from the max) get(size_t) - This should return the item with the matching index. For example if given an index of 3, you should return the item at index 3 in the list. . . . . add (Item) This should add another item for sale in the Gilded Rose by adding it to . operator[l(size t) - This should perform identical to the get(size_t) function. Initially the given code will not compile. As you complete the code, the tests should start to pass your inventory in main.cpp #pragma once #include using std: :string; /I This is already done for you... class Item public: string name; int sellIn; int quality; Item(string, int, int); 1; Item: Item(string new_name, int new_sellIn, int new_quality) : name (new_name), sellIn(new_sellIn), quality(new_quality) f IThis class is incomplete... class GildedRose t private: //Add something to hold at least 10 items public: GildedRose); -GldedRose ( ) ; size_t size() const Item& get(size t); void add(const Item&); Item& operator[](size_t); 1; // This file tests your class and makes sure you created the GildedRose correctly #include #include #include "GildedRose.h" using std::cout; using std: :endl; using std: :string; const size t NUM_TESTS9; size_t NUM PASSED 0; // Helper Functions template typename void assertEquals (string, T, T); T> // Main Testing int main(int argc, char const *argv]) GildedRose store store.add (Item("+5 Dexterity Vest", 10, 20)); store.add (Item("Aged Brie", 2, 0)); store.add(Item("Elixir of the Mongoose", 5, 7)); store.add(Item("Sulfuras, Hand of Ragnaros", 0, 80)); assertEquals("GildedRose.size)", static_cast(4), store.size)); assertEquals("GildedRose[0].sellIn", 1e, store[0].sellIn); assertEquals("GildedRose.get(3).quality", 80, store.get (3).quality); store.add(Item("Backstage passes to a TAFKAL80ETC concert", 15, 20)); store.add(Item("Backstage passes to a TAFKAL80ETC concert", 10, 49)); store.add(Item("Backstage passes to a TAFKAL80ETC concert", 5, 49)); assertEquals("GildedRose.size)", static_cast(7), store.size)); assertEquals("GildedRose[6].quality", 49, store[6].quality); assertEquals("GildedRose.get(4).sellIn", 15, store.get(4).sellIn); store.add (Item("Conjured Mana Cake", 3, 6)); assertEquals("GildedRose.size)", static_cast(8), store.size)); assertEquals("GildedRose[8].name", static_cast("Conjured Mana Cake"), store[7].name); assertEquals("GildedRose.get (8).name", static_cast ("Conjured Mana Cake"), store.get (7).name) cout void assertEquals (string test_name, T expected, T actual) if (actual expected) { cout

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!