Answered You can hire a professional tutor to get the answer.

QUESTION

You were recently hired by GroceriesRUs company. They want you to develop code to move their grocery operations online.

You were recently hired by GroceriesRUs company. They want you to develop code to move their grocery operations online. As a part of this effort, you are required to develop a GroceryCart class that can hold groceryitems (Item class). The Item class has the following data members item description (string), cost (double). The Items class should have mutators (setters) and accessors (getters). Also overload the << oprator for the Item class The GroceryCart should have the following public methods- void insertItem(Item) - Insert a grocery Item into the cart void deleteItem(Item) - Delete a grocery Item from the cart int getItemCount() - Return how many items are there are in the cart bool isCartEmpty() - Returns true if cart is empty; false otherwise double calcTotalCost() - Returns the total cost of all items in the cart Also, overload the == operator to see if two carts are identical. Two carts are identical if all the item descriptions are identical. Use a vector container in the GroceryCart to hold the items.

The code should be organized as the following files

item.h, item.cpp, cart.h, cart.cpp, assignment1_test.cpp

assignment1_test.cpp is already given below:

#include <iostream>

# include "item.h" // You need to code this

# include "cart.h" // You need to code this

using namespace std;

int main()

{

Item it1{"Salad", 5.50}, it2{"Milk", 2.50}, it3{"Bread", 1.75}, it4;

//Tests the Item constructors

GroceryCart cart1; // Test GroceryCart constructor

cart1.insertItem(it1);

cart1.insertItem(it2);

cart1.insertItem(it3);

if (!cart1.isCartEmpty()) { // Test isCartEmpty() method

cout << "Number of items in cart1 " << cart1.getItemCount() <<

endl; // Tests getItemCount() method

cout << "Total cost of items in cart1 $" << cart1.calcTotalCost()

<< endl; // Tests calcTotalCost() method

}

//To test the delete function

cart1.deleteItem(it1);

cart1.deleteItem(it3);

cart1.deleteItem(it2);

cout << "Number of items in cart1 " << cart1.getItemCount() << endl;

GroceryCart cart2;

cart2.insertItem(it1);

it4.setDescription("Coffee"); // Tests setDescription() method

it4.setCost(7.5); //Test setCost method

cout << it4; //Should print Coffee:$7.5. Tests << operator

cart2.insertItem(it4);

//To test the items inserted in cart2

cout << cart2.getItemCount() << endl;

// To check the == operator overloading

GroceryCart cart3;

cart3.insertItem(it1);

cart3.insertItem(it2);

GroceryCart cart4;

cart4.insertItem(it1);

cart4.insertItem(it2);

if (cart3 == cart4) //Tests == operator

cout << "Possibly duplicate carts" << endl;

return 0;

}

Show more
LEARN MORE EFFECTIVELY AND GET BETTER GRADES!
Ask a Question