using namespace std; #include "person.h" void person::update_food(string new_food) { if(name != "Kevin Bacon") favorite_food = new_food; } void person::food_friend() { cout << "freinds for " << this->name << " with similar tastes: ["; for(auto i = friends.begin(); i != friends.end(); i++) { if((*i)->favorite_food == this->favorite_food) { cout << "'" << (*i)->name << "', "; } } cout << "]" << endl; } int person::bacon_number() { return 0; } ostream &operator<<(ostream &stream, person & p) { stream << "{name: '" << p.name << "', favorite_food: '" << p.favorite_food << "'"; if(p.friends.size() > 0) { stream << ", friends: ["; for(auto i = p.friends.begin(); i != p.friends.end(); i++) { if (i != p.friends.begin()) { stream << ", "; } stream << "'" << (*i)->name << "'"; } stream << "]"; } stream << "}"; return stream; } istream &operator>>(istream &stream, person &o) { string buffer; cout << "name: "; stream.ignore(); getline(stream, buffer); o.name = buffer; cout << "food: "; getline(stream, buffer); o.favorite_food = buffer; return stream; }