subject

Plant information (vector) Given a base Plant class and a derived Flower class, complete main() to create a vector called myGarden. The vector should be able to store objects that belong to the Plant class or the Flower class. Create a function called PrintVector(), that uses the PrintInfo() functions defined in the respective classes and prints each element in myGarden. The program should read plants or flowers from input (ending with -1), adding each Plant or Flower to the myGarden vector, and output each element in myGarden using the PrintInfo() function.
I solved this question to the best of my ability, but I still getting an error. I need your help to fix this error. I will post a pictures with this error. Thank you.
Ex. If the input is:
plant Spirea 10
flower Hydrangea 30 false lilac
flower Rose 6 false white
plant Mint 4
-1
the output is:
Plant Information:
Plant name: Spirea
Cost: 10
Plant Information:
Plant name: Hydrengea
Cost: 30
Annual: false
Color of flowers: lilac
Plant Information:
Plant name: Rose
Cost: 6
Annual: false
Color of flowers: white
Plant Information:
Plant name: Mint
Cost: 4
main. cpp
#include "Plant. h"
#include "Flower. h"
#include "Plant. cpp"
#include "Flower. cpp"
#include
#include
#include
using namespace std;
// TODO: Define a PrintVector function that prints an vector of plant (or flower) object pointers
void PrintVector(vector myGarden)
{
for(int i=0; i {
if(typeid(Flower)==typeid(myGarden[ i]))
(dynamic_cast(myGarden[i]))->Pri ntInfo();
else
myGarden[i]->PrintInfo();

cout<
}

}

int main(int argc, char* argv[]) {

// TODO: Declare a vector called myGarden that can hold object of type plant pointer

vector myGarden;

// TODO: Declare variables - plantName, plantCost, flowerName, flowerCost,

// colorOfFlowers, isAnnual

string plantName, flowerName, colorOfFlowers, isann;

bool isAnnual;

int plantCost, flowerCost;

string input;

Flower *flower;

Plant *plant;

cin >> input;

while(input != "-1") {

// TODO: Check if input is a plant or flower

if (input=="plant")

{

cin>>plantName;

cin>>plantCost;

plant = new Plant();

plant->SetPlantName(plantName);< br />
plant->SetPlantCost(plantCost);< br />
myGarden. push_back(plant);

}

else if(input=="flower")

{

cin>>flowerName;

cin>>flowerCost;

cin>>isann;

isAnnual = (isann=="true");

cin>>colorOfFlowers;

flower = new Flower();

flower->SetPlantName(flowerName) ;

flower->SetPlantCost(flowerCost) ;

flower->SetPlantType(isAnnual);< br />
flower->SetColorOfFlowers(colorO fFlowers);

myGarden. push_back(flower);

}

// Store as a plant object or flower object

// Add to the vector myGarden

cin >> input;

}

// TODO: Call the method PrintVector to print myGarden

PrintVector(myGarden);

for (size_t i = 0; i < myGarden. size(); ++i) {

delete myGarden. at(i);

}

return 0;

}

Plant. h

#ifndef PLANTH
#define PLANTH

#include
using namespace std;

class Plant {
public:
virtual ~Plant();
void SetPlantName(string userPlantName);
string GetPlantName() const;
void SetPlantCost(int userPlantCost);
int GetPlantCost() const;
virtual void PrintInfo() const;
protected:
string plantName;
int plantCost;
};
#endif
Plant. cpp
#include "Plant. h"
#include
Plant::~Plant() {};
void Plant::SetPlantName(string userPlantName) {
plantName = userPlantName;
}
string Plant::GetPlantName() const {
return plantName;
}
void Plant::SetPlantCost(int userPlantCost) {
plantCost = userPlantCost;
}
int Plant::GetPlantCost() const {
return plantCost;
}
void Plant::PrintInfo() const {
cout << "Plant Information:" << endl;
cout << " Plant name: " << plantName << endl;
cout << " Cost: " << plantCost << endl;
}
Flower. h
#ifndef FLOWERH
#define FLOWERH
#include "Plant. h"
#include
using namespace std;
class Flower : public Plant {
public:
void SetPlantType(bool userIsAnnual);
bool GetPlantType() const;
void SetColorOfFlowers(string userColorOfFlowers);
string GetColorOfFlowers() const;
void PrintInfo() const;
private:
bool isAnnual;
string colorOfFlowers;
};
#endif
Flower. cpp
#include "Flower. h"
#include
void Flower::SetPlantType(bool userIsAnnual) {
isAnnual = userIsAnnual;
}
bool Flower::GetPlantType() const {
return isAnnual;
}
void Flower::SetColorOfFlowers(string userColorOfFlowers) {
colorOfFlowers = userColorOfFlowers;
}
string Flower::GetColorOfFlowers() const {
return colorOfFlowers;
}
void Flower::PrintInfo() const {
cout << "Plant Information:" << endl;
cout << " Plant name: " << plantName << endl;
cout << " Cost: " << plantCost << endl;
cout << " Annual: " << boolalpha << isAnnual << endl;
cout << " Color of flowers: " << colorOfFlowers << endl;
}

ansver
Answers: 2

Another question on Computers and Technology

question
Computers and Technology, 23.06.2019 04:31
Acloud service provider uses the internet to deliver a computing environment for developing, running, and managing software applications. which cloud service model does the provider offer? a. iaas b. caas c. maas d. paas e. saas
Answers: 1
question
Computers and Technology, 24.06.2019 13:00
Refer to the figure and match the theorem that supports the statement.1.if chords are =, then arcs are =.if bc = de, then arc bc = arc de2.if arcs are =, then chords are =.if arc bc = arc de, then bc = de3.diameters perpen
Answers: 3
question
Computers and Technology, 24.06.2019 14:30
Which computer network component connects two different networks together and allows them to communicate? a is a node (or a device) that connects two different networks together and allows them to communicate.
Answers: 1
question
Computers and Technology, 24.06.2019 16:00
"gps interaction and cognitive process" respond to the following: imagine that you have been asked to design a gps product that will have voice recognition and bluetooth capability. discuss and conceptualize a user interaction model. predict two (2) problems that may arise in gps products with voice recognition and bluetooth capability. recommend solutions for each of these issues. attention is one of the six cognition processes. when attention is applied to a design, the goal is to make it easier for the end user to quickly locate where he / she should type information on the computer or mobile device screen. compare and contrast how the google search engine and the microsoft bing search engine employ the attention cognition process. provide your opinion as to which search engine better employs the attention cognition process and explain why.
Answers: 3
You know the right answer?
Plant information (vector) Given a base Plant class and a derived Flower class, complete main() to...
Questions
question
Mathematics, 08.03.2021 19:40