class Elections { public: void ReadData(); void CalculateAndPrintResults(); private: PartyDB parties; VoterDB voters; BallotVec ballots; }; class PartyDB { public: void AddParty(const string& id); void RemoveParty(const string& id); Party* GetPartyByName(const string& id); Party* GetPartyByIndex(unsigned int index); unsigned int PartyCount() const; ~PartyDB(); private: PartyVec parties; };