summaryrefslogtreecommitdiff
path: root/Teacher.h
diff options
context:
space:
mode:
Diffstat (limited to 'Teacher.h')
-rw-r--r--Teacher.h56
1 files changed, 56 insertions, 0 deletions
diff --git a/Teacher.h b/Teacher.h
new file mode 100644
index 0000000..a518489
--- /dev/null
+++ b/Teacher.h
@@ -0,0 +1,56 @@
+#ifndef TEACHER_H
+#define TEACHER_H
+
+#include <string>
+#include <iostream>
+using std::string;
+using namespace std;
+
+#include "Course.h"
+#include "Student.h"
+
+class Course; // "Forward declaration" required for compilation.
+
+/**
+ * Teacher class.
+ */
+class Teacher
+{
+public:
+
+ /**
+ * Default constructor (aka no-argument constructor).
+ */
+ Teacher(void);
+
+ /**
+ * This constructor takes the teacher's name as an argument.
+ */
+ Teacher(string teacher_name);
+
+ /**
+ * Destructor.
+ */
+ ~Teacher(void);
+
+ void addToMyFavorites(Student *fav);
+ void setMyCourse(Course *c);
+ void setName(string n);
+
+ int getNumStudents(void);
+ Course *getMyCourse(void);
+ string getName(void);
+
+ void printTeacher(void);
+
+ friend class Course;
+
+private:
+ int numStudents;
+ string name;
+ Course *myCourse;
+ static const int MAX_FAVORITES = 10;
+ Student **myFavorites;
+}; // class Teacher
+
+#endif // TEACHER_H