// Member Implementation File // #include <iostream> #include <string> #include <fstream> #include <vector> #include <algorithm> #include "Person.h" #include "Member.h" Member::Member() : Person() { memid = ""; } Member::Member(string inName) : Person(inName) { } Member::Member(string inName, string inMemid) : Person(inName) { memid = inMemid; } string Member::getMemid() { return memid; } string Member::getName() { return Person::getName(); } string Member::getMemName(vector <Member> membersVec, string iNmemid) { auto it = find_if(membersVec.begin(), membersVec.end(), [&iNmemid](Member& obj) { return obj.getMemid() == iNmemid; }); // We use the function find_if from the library <algorithm> to search our vector for the string entered by the user (inMemid). Member tempU = *it; // Once we have a match, we create a temporary member which holds the information retrieved from it (using a pointer for it, holding its values). return tempU.getName(); // in our return, we call the function getName() which returns the name of the member by scoping our base class (Person). } bool Member::memidCheck(vector <Member> membersVec, string memid) // Searching a vector of a class { auto it = find_if(membersVec.begin(), membersVec.end(), [&memid](Member& obj) { return obj.getMemid() == memid; }); if (it != membersVec.end()) { return true; } else { return false; } // auto index = distance(membersVec.begin(), it); // ** to find index of auto it ** } void Member::print() { cout << "Tenant name: " << Person::getName() << ", ID: " << memid << endl; }