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...

Django not able to find static files[Solved]

# Django static files not working In this article, you will learn how to fix the problem of not loading static files. This is the easiest and safest solution. In the new version of Django 3.1 and above the settings.py file uses PATH instead of OS to deal with the directory structure. So all the code, we wrote for our static dirs and things like that will no longer work unless we import os at the top of our settings.py file.. Note : This article related to DEBUG = True , if you have problems with DEBUG = False then you can follow this article; Static files not working when DEGUB= False . Have fun! Let's follow a few steps and, solve the problem of not loading Django static files: Step 1 : Check that "BASE_DIR" is defined in your project settings.py , if not then define it  ➤ Code: settings.py import os BASE_DIR = ...