---
# System prepended metadata

title: IOOMassign1

---

# IOOMassign1

## Header files
![](https://i.imgur.com/58noRfx.jpg)
![](https://i.imgur.com/NmDpcUs.png)


* Address.h
    * Contains address as strings house, street, city names, getter ans setter functions for above three.
    * Function setAddress to change whole address in one call.
    * Print function to print whole address.
* Person.h
    * Contains name, department, address for every object and static count variable to track number of objects.
* Student.h and Faculty.h
    * Both are derived from person class and contains additional datamembers along with courses and grades.
    * Grades are maintained for each of the course, for students and maximum of 5 courses can be enrolled in by each student.

#### Using enums
* Enums is used for department and designation, both enum members are being accessed using a string\[] containing enum strings to return values. 
## Execution Instructions
* I have created single objects for each of person, student and faculty class, each containing thier own address inside as member data.
* print_all() is invoked to print all the details for every pointer in vector plist
* Changes are made using appropriate function calls and different print functions are invoked to confirm the changes.