Hello, I am having trouble with this homework assignment for c++
2. Implement the following:
a. A class named Food.
1. dynamic data member: name
2. accessors and mutators
3. the big three
b. A class named Cake that inherits from Food.
1. dynamic data member: topping (type of icing such as chocolate)
Due date: Jul 27, 11:59 PM
2. accessors and mutators
3. the big three
c. Create an object of type Food and output its data member.
d. Create an object of type Cake and output its data members.
e.
Test all inherited functions in main. (Cannot change the given int main. Any alteration is not accepted)
int main() {
cout <>
Food f1("Bread");
f1.output();
cout < "\nf2:="" copy="" constructor"=""><>
Food f2 = f1;
f2.output();
cout < "\nf3:="" assignment="" overload"=""><>
Food f3;
f3 = f2;
f3.output();
cout < "\nfood:="" mutator"=""><>
f1.setName("Pizza");
f2.setName("Sandwich");
f1.output();
f2.output();
f3.output();
cout < "\ncake:\n"=""><>
Cake c1("Ice Cream Cake", "Chocolate Icing");
c1.output();
cout < "\ns2:="" copy="" constructor"=""><>
Cake c2(c1);
c2.output();
cout < "\ns3:="" assignment="" overload"=""><>
Cake c3;
c3 = c2;
c3.output();
cout < "\ncake:="" mutator"=""><>
c1.setName("Cheese cake");
Due date: Jul 27, 11:59 PM
c1.setTopping("Strawberry");
c2.setName("Potato Cake");
c2.setTopping("Vanilla");
c1.output();
c2.output();
c3.output();
cout <>
return 0;
}
O
utput from the main function above:
Bread
f2: Copy Constructor
Bread
f3: Assignment Overload
Bread
Food: Mutator
Pizza
Sandwich
Bread
Cake:
Ice Cream Cake, Chocolate Icing
s2: Copy Constructor
Ice Cream Cake, Chocolate Icing
s3: Assignment Overload
Ice Cream Cake, Chocolate Icing
Cake: Mutator
Cheese cake, Strawberry
Potato Cake, Vanilla
Ice Cream Cake, Chocolate Icing