Answer to Question #197254 in C++ for tytyy

Question #197254

Make Employee an abstract class. Declare salary() and display() as pure virtual functions in it. Derive salaried employee (monthly), hourly employee (per hour basis), and commissioned employee (bonus on completing each target) from base class Employee. The display() function should show employee no, employee name, and salary of all employees. 



1
Expert's answer
2021-05-23T08:50:18-0400


#include <iostream>


using namespace std;
class Employee{
    protected:
     string empName;
     string empNo;
     double sal;
    public:
        virtual double salary() = 0;
        virtual void display() = 0;
};


class SalariedEmployee:public Employee{
    public:
        double salary(){
            return sal;
        }
        void display(){
           cout<<"Employee name: "<<empName;
           cout<<"Employee number: "<<empNo;
           cout<<"Salary: "<<salary();
        }
};
class HourlyEmployee:public Employee{
    public:
        double salary(){
          return sal;  
        }
        void display(){
           cout<<"Employee name: "<<empName;
           cout<<"Employee number: "<<empNo;
           cout<<"Salary: "<<salary(); 
        }
};
class CommissionedEmployee:public Employee{
    public:
        double salary(){
           return sal;  
        }
        void display(){
           cout<<"Employee name: "<<empName;
           cout<<"Employee number: "<<empNo;
           cout<<"Salary: "<<salary();
        }
};
int main()
{


    return 0;
}

Need a fast expert's response?

Submit order

and get a quick answer at the best price

for any assignment or question with DETAILED EXPLANATIONS!

Comments

No comments. Be the first!

Leave a comment

LATEST TUTORIALS
New on Blog