class Planet
{
friend bool operator>=(const Planet& p1, constPlanet& p2);
friend ostream& operator<<(ostream& os,const Planet& p);
friend istream& operator>>(istream& is,Planet& p);
public:
Planet();
Planet(string name, double mass, doublediameter);
private:
string name;
double mass;
double diameter;
};
Planet::Planet()
{
this->name = “Unknown”;
this->mass = 0;
this->diameter = 0;
}
Planet::Planet(string name, double mass, doublediameter)
{
this->name = name;
this->mass = mass;
this->diameter = diameter;
}
int SolarSystem::getNumberOfPlanets() const
{
return (int)planets.size();
}
void SolarSystem::setNumberPlanets(int num)
{
planets.resize(num);
return;
}
int main()
{
//declarations
SolarSystem the_system;
int num_planets;
//input and output
cout << “How many planets are in your solarsystem? “;
cin >> num_planets;
//add planets
the_system.setNumberPlanets(num_planets);
//populate the solar system
cin >> the_system;
//print the solar system
cout << the_system << endl;
return 0;
}
bool operator>=(const Planet& p1, constPlanet& p2)
{
return p1.mass >= p2.mass;
}
istream& operator>>(istream& is,Planet& p)
{
is >> p.name >> p.mass >>p.diameter;
return is;
}
ostream& operator<<(ostream& os, constPlanet& p)
{
os << “The ” <<