diff options
| author | Syndamia <kamen@syndamia.com> | 2024-05-10 12:27:14 +0300 |
|---|---|---|
| committer | Syndamia <kamen@syndamia.com> | 2024-05-10 12:27:14 +0300 |
| commit | eb6305c8b0a71a613a34edbcabdaf1fde259451d (patch) | |
| tree | 2ba4402c82569810ab4287175670193597cc52d4 /week12/Exercise4/Manager.h | |
| parent | 8dd9b39fa54a91030cdd5fe71973f78f7e8089e0 (diff) | |
| download | oop-2023-solutions-eb6305c8b0a71a613a34edbcabdaf1fde259451d.tar oop-2023-solutions-eb6305c8b0a71a613a34edbcabdaf1fde259451d.tar.gz oop-2023-solutions-eb6305c8b0a71a613a34edbcabdaf1fde259451d.zip | |
[w12] Finished ex 4
Diffstat (limited to 'week12/Exercise4/Manager.h')
| -rw-r--r-- | week12/Exercise4/Manager.h | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/week12/Exercise4/Manager.h b/week12/Exercise4/Manager.h new file mode 100644 index 0000000..eee8f9f --- /dev/null +++ b/week12/Exercise4/Manager.h @@ -0,0 +1,27 @@ +#pragma once +#include "Employee.h" +#include "Person.h" + +class Manager : public Person, public Employee { + Person* manages; + unsigned size; + unsigned allocated; + + void resize(); + + void free(); + void copyFrom(const Manager& other); + +public: + Manager(); + ~Manager(); + Manager(const Manager& other); + Manager& operator=(const Manager& other); + Manager(Manager&& other); + Manager& operator=(Manager&& other); + + void StartManaging(Person& newEmp); + void StopManaging(const Person& oldEmp); + + virtual float Workload() override; +}; |
