Advertisement
amsavchenko

Untitled

Nov 21st, 2018
98
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.38 KB | None | 0 0
  1. class Student {
  2. public:
  3. Student(string x, int y) {
  4. name = x;
  5. age = y;
  6. }
  7. Student( ) {
  8.  
  9. }
  10. ~Student() {
  11.  
  12. }
  13. string name;
  14. int age;
  15.  
  16. int flag;
  17.  
  18. void set_flag (int f) {
  19. flag = f;
  20. }
  21.  
  22. bool operator==(const Student &student1) {
  23. if (flag == 1) return (name == student1.name);
  24. else return (age == student1.age); // if flag == 2 and ...
  25. }
  26. bool operator>(const Student &student1) {
  27. if (flag == 1) return (name > student1.name);
  28. else return (age > student1.age);
  29. }
  30. bool operator<(const Student &student1) {
  31. if (flag == 1) return (name < student1.name);
  32. else return (age < student1.age);
  33. }
  34. bool operator<=(const Student &student1) {
  35. if (flag == 1) return (name <= student1.name);
  36. else return (age <= student1.age);
  37. }
  38. bool operator>=(const Student &student1) {
  39. if (flag == 1) return (name >= student1.name);
  40. else return (age >= student1.age);
  41. }
  42. bool operator!=(const Student &student1) {
  43. if (flag == 1) return (name != student1.name);
  44. else return (age != student1.age);
  45. }
  46. };
  47.  
  48. std::ostream &operator<<(std::ostream &os, Student const &student) {
  49. if (student.flag == 1) return os << student.name;
  50. else return os << student.age;
  51. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement