Skip to main content

What is polymorphism in c++ explain with an example

What is polymorphism in C++

Polymorphism in C++ is a concept by which we can perform a single action in different ways. Polymorphism is derived in two from Greek word “poly” and “morphism”.

"Poly" means many and "morphism" means (forms) property which help us to assign more than one property.

# Types of polymorphism :

There are two types of Polymorphism in C++ :

  • Function overloading(Compile-time polymorphism).

  • Function overriding(Run-time polymorphism).

1.) Function Overloading : If a class has multiple functions having same name but different in parameters, It is known as function overloading.

  • If we have to perform only one operation, having same name of the functions increases the readability of the program.

  • It is also known as static or early binding.

Let’t see an example of Function Overloading :

  ➤ Example : function overloading;

#include <iostream>

using namespace std; 
class Add  { 
  public: 
  int sum(int num1, int num2){ 
    return num1+num2; 
  } 
  int sum(int num1, int num2, int num3){ 
    return num1+num2+num3; 
  } 
}; 
int main() { 
  Add obj; 
  cout<<"Output: "<<obj.sum(10, 20)<<endl; 	//This will call the first function 
  cout<<"Output: "<<obj.sum(11, 22, 33);  //This will call the second function 
  return 0; 
}
Output :

30

60

2.) Function overriding : Function overriding is one of the ways in which C++ supports Runtime Polymorphism. If same functions defined in parents and child class with same signature know as function overriding.

  • It is also known as dynamic binding or late binding.

Let’t see an example of Function overriding :

  ➤ Example : function overriding;

#include <iostream>
using namespace std; 
 
class Coderwebsite 
{ 
  public: 
  void display() { 
    cout<<"Welcome to my website!"<<endl; 
  } 
}; 
class Coder: public Coderwebsite 
{ 
  public: 
  void display() { 
    cout<<"I am coder!"; 
  } 
}; 
int main()  { 
  Coderwebsite obj; //Parent class object 
  obj.display(); 
	 
  Coder obj2;   //Child class object 
  obj2.display(); 
   
  return 0; 
} 
Output :

Welcome to my website!

I am coder!

Comments

Popular Posts

How to remove the date and .html from every blogger post url

#Remove date and .html from blogger post url A Common search term which every blogger search is How to Remove Date From Blogger Post URL or how do I remove date from blogger permalink? Follow the steps below and then date and .html will be removed from the URL of your blogger post. Step 1 : Login to your Blogger blog and select Theme / Template. Step 2 : Click on Edit HTML and paste the below code just above the </head> tag let's see code :   ➤ Code : mycode.js; Copy code <script type='text/javascript' > //<![CDATA[ // BloggerJS v0.3.1 var urlTotal,nextPageToken,postsDatePrefix=!1,accessOnly=!1,useApiV3=!1,apiKey="",blogId="",postsOrPages=["pages","posts"],jsonIndex=1,secondRequest=!0,feedPriority=0,amp="&"[0];function urlVal(){var e=window.location.pathname,t=e.length;return...

Django static files not working when debug false || debug true

# Django static and media files not working when debug is false In this article you will learn how to fix problem of not loading static files and media in Django even the DEBUG is FALSE. This is the easiest and safest solution. # Problem: Django static and media files not working when debug is false  ➤ Code: settings.py DEBUG = False #True ALLOWED_HOSTS = [ '*' ] #Host name # Problem Fix: Let's see, How you can fix the problem of Django static and media files not working when DEBUB = False : 1.)First way: devserver in insecure mode If you still need to server static locally ( e.g. for testing without debug ) you can run devserver in insecure mode: python manage.py runserver --insecure --insecure: it means you can run serve...

How to remove ? m=1 or ?m=0 from blogger post URL

# Remove m=1 From URL of Blogger post A Common search term that every blogger search is How to ?m=1 or ?m=0 from blogger Post URL. We all know that "simplicity is beauty" and you want to clean permalink. So, in this article, I will guide you on how to remove ?m=1 from the blogger URL, and make a simple professional URL. Follow the few steps below and removed ?m=1 from the URL of your blogger post. Step 1 : First, you login into your blogger's dashboard and then select your blog. Step 2 : Click on the Theme option. Step 3 : Click on the customise Step 4 : Click on Edit HTML option. Step 5 : Press (CTRL + F) from the keyboard and type "/head" and then search. ( If you are not understanding, see the below photo ) Step 6 : Now paste the below code just above the </head> tag. let's see code :   ➤ Code : mycode.js; Copy code ...