Advertisement
Guest User

Untitled

a guest
May 12th, 2017
520
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.08 KB | None | 0 0
  1. #include <iostream>
  2. #include <list>
  3. using namespace std;
  4.  
  5. /*
  6. class Date
  7. {
  8. private:
  9. int year, month, day;
  10. public:
  11. Date(int y, int m, int d) { year = y; month = m; day = d; }
  12. bool operator=(const Date d)
  13. {
  14.  
  15. }
  16.  
  17. };
  18. */
  19.  
  20. class UniMember
  21. {
  22. private:
  23. string name, e_mail, dob;
  24.  
  25. public:
  26. UniMember(string n, string e, string d);
  27. virtual void print();
  28. };
  29.  
  30. void UniMember::print(){
  31. cout << "UniMember name: "<<name<<endl;
  32. cout << "UniMember e_mail: "<<e_mail<<endl;
  33. cout << "dob: "<<dob<<endl;
  34. }
  35.  
  36. UniMember::UniMember(string n, string e, string d)
  37. : name(n), e_mail(e), dob(d)
  38. {
  39. cout << "UniMem init" << endl;
  40. }
  41.  
  42.  
  43. class Student : public UniMember
  44. {
  45. private:
  46. int admissionYear;
  47. list<string> courses;
  48.  
  49. public:
  50. Student(string n, string e, string d, int y, list<string> coursesList);
  51. virtual void print();
  52.  
  53. };
  54. void Student :: print (){
  55. cout <<"Student Admission Year: "<<admissionYear<<endl;
  56. }
  57. Student :: Student(string n, string e, string d, int y, list<string> coursesList)
  58. : UniMember(n, e, d), admissionYear(y), courses(coursesList)
  59. {
  60. cout << "student init" << endl;
  61. }
  62.  
  63. class Teacher : public UniMember
  64. {
  65. private:
  66. list<string> courses;
  67.  
  68. public:
  69. Teacher(string n, string e, string d, list<string> coursesList);
  70. virtual void print();
  71.  
  72. };
  73. void Teacher :: print(){
  74. UniMember::print();
  75. //print courses
  76. }
  77. Teacher :: Teacher(string n, string e, string d, list<string> coursesList)
  78. : UniMember(n, e, d), courses(coursesList)
  79. {
  80. cout << "teacher init" << endl;
  81. }
  82.  
  83. void test1()
  84. {
  85. UniMember* pUniMember;
  86. list<string> L = { "maths", "c++", "stuff" };
  87. pUniMember = new Student{"John", "john@stud.com", "1827-05-28", 1997, L};
  88.  
  89. list<string> tL = { "theory of something", "physics" };
  90. pUniMember = new Teacher {"Peter", "boss@uni.ro", "1672-02-12", tL};
  91. pUniMember->print();
  92.  
  93. Teacher* pTeacher;
  94. pTeacher = new Teacher {"Ralph", "ralph@uni.ro", "1972-02-12", tL};
  95. // pTeacher = new UniMember { ""}
  96. }
  97.  
  98. void test_lab10_1(){
  99. list<UniMember*>uList;
  100. list<string> L = { "maths", "c++", "stuff" };
  101. list<string> tL = { "theory of something", "physics" };
  102. uList.push_back(new Teacher{"Peter", "boss@uni.ro", "1672-02-12", tL});
  103. uList.push_back(new Student{"John", "john@stud.com", "1827-05-28", 1997, L});
  104. uList.push_back(new UniMember{"DASAS","asd@asd.com","123-123-123"});
  105. for (list<UniMember*>::iterator it = uList.begin();it!=uList.end();++it){
  106. (*it)->print();
  107. cout << endl;
  108. }
  109.  
  110.  
  111.  
  112.  
  113. }
  114.  
  115.  
  116. int main()
  117. {
  118. // UniMember Andrew{"Andrew", "andrew@uni.com", "2017-04-12"};
  119. //
  120. // list<string> L = { "maths", "c++", "stuff" };
  121. // Student John{"John", "john@stud.com", "1827-05-28", 1997, L};
  122. //
  123. // list<string> tL = { "theory of chibrit", "boring stuff III" };
  124. // Teacher Peter{"Peter", "boss@uni.ro", "1672-02-12", tL};
  125. test_lab10_1();
  126. return 0;
  127. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement