In this assignment, you are going to implement the hierarchy illustrated below: Wolf Werewolf Zombie Human Citizen Vampire Troll Nobbs Dwarf In this design, we have two base classes: Wolf and Citizen (Wolf will be an "IWolf" Interface if coding in C#) Wolf: There is no ability for multiple inheritance in C# so Werewolf will implement the Wolf Interface. If coding in C++, Werewolf will inherit from both Wolf and Citizen classes. Citizen has children: Human, Troll, and Dwarf Human has children: Werewolf, Zombie, Vampire, and Nobbs The Citizen class has the function pay taxes and speak, each subclass should implement differentiated versions. The Wolf base class will have some appropriate wolf like functionality such as Howl and Growl, which will be implemented in the Werewolf. The Werewolf will extend Human, but implement the IWolf interface for C#, and extend both Human and Wolf classes. Human's will pay their taxes in dollars, Trolls in gems, and Dwarfs in gold. Wolves do not pay taxes, but Werewolves will. Each constructor should indicate what is being created and destructor should indicate what is being destroyed. It would be helpful to have constructors accept a string with the name passed in so the constructor/destructor messages are more readable. The program (main) should involve the collection of taxes by one of the city's fine public servants. Create a single array of citizens and have each pay their taxes and speak. You can be creative and then proceed to showcase other functionality that you have included.
OOPs
In today's technology-driven world, computer programming skills are in high demand. The object-oriented programming (OOP) approach is very much useful while designing and maintaining software programs. Object-oriented programming (OOP) is a basic programming paradigm that almost every developer has used at some stage in their career.
Constructor
The easiest way to think of a constructor in object-oriented programming (OOP) languages is:
Please create a code on c++ for this description. Include a flow chart aswell.
Components:
● Multiple files with classes organized. A well organized solution is critical.
● Implemented the above described functionality.
● Created a main function to showcase the different functions that were implemented along with a guide explaining what you are showing.


Step by step
Solved in 4 steps with 5 images









