Website Summary Files Commits Branches @commit @diff @stats
path: root / Sem. 09 / task1 (not finished) / UniCourse.h
blob: fde1518295d0240edf7dce5327475a9794d5227f (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#include "Student.h"

class UniCourse
{
	char* lecturerName;
	char* assistantsNames[3];

	Student** students;
	size_t capacity;
	size_t size;

	void copyFrom(const UniCourse& other);
	void free();

	size_t findStudentByFn(size_t fn);

	void resize();

public:
	UniCourse(const char* lecturerName);
	UniCourse(const char* lecturerName, const char* assistant1Name);
	UniCourse(const char* lecturerName, const char* assistant1Name, const char* assistant2Name);
	UniCourse(const char* lecturerName, const char* assistant1Name, const char* assistant2Name, const char* assistant3Name);


	UniCourse(const UniCourse& other);
	UniCourse& operator=(const UniCourse& other);
	~UniCourse();

	void addStudent(const char* name, size_t fn);
	void removeStudent(size_t fn);

	void print();

};