Learn about C++ Polymorphism.

Polymorphism in C++

Polymorphism means "many forms", and it occurs when we have many classes that are related to each other by inheritance.

Like we specified in the previous lesson; Inheritance lets us inherit attributes and methods from another class. Polymorphism uses those methods to perform different tasks. This allows us to perform a single action in different ways.

For example, think of a base class called Animal that has a method called animalSound(). Derived classes of Animals could be Pigs, Cats, Dogs, Birds - And they also have their own implementation of an animal sound (the pig oinks, and the cat meows, etc.):

C++ (GCC 9.2.0)
  • Input  

In C++ polymorphism is mainly divided into two types: Compile time Polymorphism and Runtime Polymorphism. The Compile time Polymorphism polymorphism is achieved by function overloading or operator overloading. Runtime polymorphism is achieved by Function Overriding.

Video credit: Derek Banas

C++ Scientific Programming