Question
Lab 12 1. Introduction This weeks lesson is focused on Polymorphism, for which you will create classes using inheritance and virtual functions. To start with,
Lab 12
1. Introduction
This weeks lesson is focused on Polymorphism, for which you will create classes using inheritance
and virtual functions. To start with, what is polymorphism? Polymorphism allows the name of a
function to invoke a response on a base-class-type object and a different one in objects of a derived
class, for which virtual functions are used.
1.1 Exercise 1
This exercise deals with using virtual functions, seeing how they act according to the object on
which it is applied, which you will see in main(). Create a file lab12p1.cpp and enter the following
code:
class Employee
{
protected: double sal; //salary base
public: Employee(double s){ sal=s;}
double Payment(){ return sal;}
void prt(){
cout << "Salary="<< Payment() < class Manager : public Employee { double inc; public: Manager(double s, double i) : Employee(s) { inc = i; } double Payment(){ return sal*inc; } }; void main() { Employee e1(1500); Manager m1(1500, 1.5); cout << Exercise about inheritance and polymorphism< e1.prt( ); m1.prt( ); } Compile the project and run it, observing what is printed on the console. Next, add the word virtual before the function Payment() in the base class and run again the program. What happens this time? Why?
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started