Mega Code Archive

 
Categories / C++ Tutorial / STL Algorithms Non Modifying Sequence Operations
 

Define == operator in order to use the find method

#include <iostream> #include <vector> #include <algorithm> #include <string> using namespace std; class Employee {   string name;   unsigned number; public:   Employee() { name = ""; number = 0; }   Employee(string n, unsigned num) {     name = n;     number = num;   }   string get_name() { return name; }   unsigned get_number() { return number; } }; void show(vector<Employee> vect) {   vector<Employee>::iterator itr;   for(itr=vect.begin(); itr != vect.end(); ++itr)     cout << itr->get_number() << " " << itr->get_name() << endl;; } bool operator==(Employee a, Employee b){   return a.get_number() == b.get_number(); } int main() {   vector<Employee> employeeList;   employeeList.push_back(Employee("A", 9));   employeeList.push_back(Employee("B", 8));   employeeList.push_back(Employee("C", 6));   employeeList.push_back(Employee("D", 1));   show(employeeList);   vector<Employee>::iterator itr;   itr = find(employeeList.begin(), employeeList.end(), Employee("", 2));   cout << itr->get_name();   return 0; }