Guest User

f

a guest
Aug 13th, 2012
167
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.47 KB | None | 0 0
  1. #include <iostream>
  2. #include <string>
  3. #include <vector>
  4.  
  5. class Employee {
  6.     private:
  7.         double pph;
  8.         unsigned int age, id;
  9.         std::string name;
  10.         std::vector<std::string> logs;
  11.     public:
  12.         Employee();
  13.         Employee(int, int, std::string);
  14.         std::string getName(void)  const { return name;     }
  15.         std::string getLog (int c) const { return logs[c];  }
  16.         unsigned int getAge(void)  const { return age;      }
  17.         unsigned int getID (void)  const { return id;       }
  18.         double getPPH      (void)  const { return pph;      }
  19.         friend std::istream& operator >> (std::istream &is, Employee &e1);
  20.         friend std::ostream& operator << (std::ostream &os, const Employee e1);
  21. };
  22.  
  23. Employee::Employee() { }
  24. Employee::Employee(int a, int i, std::string n) : age(a), id(i), name(n) { }
  25.  
  26. std::ostream& operator << (std::ostream &os, const Employee e1) {
  27.     return os << "Employee #" << e1.id << ": " << e1.name << " = " << e1.pph;
  28. }
  29.  
  30. std::istream& operator >> (std::istream &is, Employee &e1) {
  31.     return is >> e1.pph;
  32. }
  33.  
  34. enum sortMethods { ALPHA_ORDER = 1, PPH = 2 };
  35.  
  36. std::vector<Employee> sortEmployees(std::vector<Employee>, const int);
  37. void displayEmployees(const std::vector<Employee>&);
  38.  
  39. int main(void) {
  40.     int id = 0;
  41.     std::vector<Employee> employeeList;
  42.     Employee emp1(42, ++id, "William");
  43.     Employee emp2(62, ++id, "Abbot");
  44.     employeeList.push_back(emp1);
  45.     employeeList.push_back(emp2);
  46.     displayEmployees(employeeList);
  47.     std::cout << "---------------------------" << std::endl;
  48.     displayEmployees(sortEmployees(employeeList, PPH));
  49.     return 0;
  50. }
  51.  
  52. std::vector<Employee> sortEmployees(std::vector<Employee> v1, const int ch) {
  53.     std::vector<Employee> hold;
  54.     std::vector<Employee>::iterator iter;
  55.     if(ch == ALPHA_ORDER) {
  56.         for(char a = 'A'; a != 'Z'; ++a) {
  57.             for(iter = v1.begin(); iter != v1.end(); ++iter) {
  58.                 if((*iter).getName()[0] == a)
  59.                     hold.push_back(*iter);
  60.             }
  61.         }
  62.     }
  63.     else if(ch == PPH) {
  64.         while(hold.size() != v1.size()) {
  65.             for(iter = v1.begin(); iter != v1.end(); ++iter) {
  66.                
  67.             }  
  68.         }
  69.     }    
  70.     return hold;
  71. }
  72.  
  73. void displayEmployees(const std::vector<Employee> &v1) {
  74.     std::vector<Employee>::iterator iter;
  75.     for(iter = v1.begin(); iter != v1.end(); ++iter)
  76.         std::cout << *iter << std::endl;
  77. }
Advertisement
Add Comment
Please, Sign In to add comment