Polymorphism in C++

The word polymorphism implies having many structures. Ordinarily, polymorphism happens when there is a progressive system of classes and they are connected by legacy. 

C++ polymorphism implies that a call to a part capacity will make an alternate capacity be executed relying upon the kind of protest that summons the capacity. 

Consider the accompanying illustration where a base class has been inferred by other two classes −

#include <iostream> 
using namespace std;

class Shape {
protected:
int width, height;

public:
Shape( int a = 0, int b = 0){
width
= a;
height
= b;
}
int area() {
cout
<< "Parent class area :" <<endl;
return 0;
}
};
class Rectangle: public Shape {
public:
Rectangle( int a = 0, int b = 0):Shape(a, b) { }

int area () {
cout
<< "Rectangle class area :" <<endl;
return (width * height);
}
};

class Triangle: public Shape {
public:
Triangle( int a = 0, int b = 0):Shape(a, b) { }

int area () {
cout
<< "Triangle class area :" <<endl;
return (width * height / 2);
}
};

// Main function for the program
int main() {
Shape *shape;
Rectangle rec(10,7);
Triangle tri(10,5);

// store the address of Rectangle
shape
= &rec;

// call rectangle area.
shape
->area();

// store the address of Triangle
shape
= &tri;

// call triangle area.
shape
->area();

return 0;
}
Polymorphism in C++ Polymorphism in C++ Reviewed by Unknown on January 11, 2018 Rating: 5

No comments:

Powered by Blogger.