Javatpoint Logo

91-9990449935

 0120-4256464

Javatpoint Logo

C++ Polymorphism

The term "Polymorphism" is the combination of "poly" + "morphs" which means many forms. It is a greek word. In object-oriented programming, we use 3 main concepts: inheritance, encapsulation and polymorphism.

There are two types of polymorphism in C++:

  • Compile time polymorphism: It is achieved by function overloading and operator overloading which is also known as static binding or early binding.
  • Runtime polymorphism: It is achieved by method overriding which is also known as dynamic binding or late binding.

C++ Runtime Polymorphism Example

Let's see a simple example of runtime polymorphism in C++.

Output:

Eating bread...

C++ Runtime Polymorphism Example: By using two derived class

Let's see another example of runtime polymorphism in C++ where we are having two derived classes.

Output:

drawing...
drawing rectangle...
drawing circle...

Runtime Polymorphism with Data Members

Runtime Polymorphism can be achieved by data members in C++. Let's see an example where we are accessing the field by reference variable which refers to the instance of derived class.

Output:

Black
Next TopicC++ Overloading




Latest 4 Tutorials on JavaTpoint