Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

-will give thumbs up directly after recieving answer. - solve using C++ - please read NOTE1,2,3 CAREFULLY - separate interface from implementation Employee Types The

-will give thumbs up directly after recieving answer.
- solve using C++
- please read NOTE1,2,3 CAREFULLY
- separate interface from implementation image text in transcribed
image text in transcribed
image text in transcribed
image text in transcribed
Employee Types The following diagram illustrates the classes you will implement in this lab and their relationships. Private myDate (-) day Type: int (-) month Type: int (-) year Type: int (+) Parameterized Constructor (+) Setters (+) print Details : void Public Employee (-) Name Type: string Private (-) Nationality Type: string (-) experienceYears Type: int protected (#) HiringDate Type: myDate (+) Parameterized Constructor that takes 2 strings, 1 integer and 1 Public myDate object (+) Getter for the name (+) Print Details : void Secretary (-) Working Hours (-) Training Certificates (+) Parameterized Constructor (+) Print Details :void (+) ChangeHiringDate :void Type: int Type: string Manager (-) Title Type: string (-) is PhD Type: bool (+) Parameterized Constructor (+) Print Details :void (+) getName :oid NOTE 1: In all of your code, do not forget to make all functions that do not modify the class constant. NOTE 2: Do not put all of your code in one file; separate implementation from the interface. NOTE 3: Avoid duplication of code! If something is already done in the base class, do not do it again in the derived class. Implement class myDate as described in the UML diagram. Don't forget to validate the data members. The year should be between 1900 and now. Implement class Employee as described in the UML diagram. Notice that unlike all its data members, HiringDate is protected and not private in this class.. Function printDetails should print information about the employee in a well-formatted manner. Implement class Secretary, which inherits from class Employee. Note the following: The WorkingHours data member represents the working hours per day. The TrainingCertificate data member represent the name of the Training Certificate of the secretary. Function printDetails of the base class should be overridden to print the additional information about the Working Hours and Training Certificate. Function ChangeHiringDate should change the HiringDate of the base class according to the given parameter. The function take three integers that represent the day, the month and the year. Implement class Manager, which inherits from class Employee. Note the following: The title data member can be Miss or Mr. The isPhD data member will be true if the manger has a PhD. Function getName in the base class should be overridden to return the title + name. See sample output below Function printDetails of the base class should be overridden to print the additional information about whether the manager is PhD qualified or not and his title. Implement a driver program to test your code. - Create an object of type Secretary assign the appropriate values for each data member, and don't

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Database Modeling And Design

Authors: Toby J. Teorey, Sam S. Lightstone, Tom Nadeau, H.V. Jagadish

5th Edition

0123820200, 978-0123820204

Students also viewed these Databases questions