• Home
  • Jobs
  • Courses
  • Certifications
  • Companies
  • Online IDE
  • Login
  • Signup
MYTAT
  • Home
  • Jobs
  • Courses
  • Certifications
  • Companies
  • Online IDE
  • Login
  • Signup
C++
  • C++ Introduction
  • C++ Getting Started
  • C++ Syntax
  • C++ Output (Print Text)
  • C++ Comments
  • C++ Variables
  • C++ Declare Multiple Variables
  • C++ Identifiers
  • C++ User Input
  • C++ Data Types
  • C++ Operators
  • C++ Strings
  • C++ Math
  • C++ Booleans
  • C++ Conditions
  • C++ Switch
  • C++ While Loop
  • C++ For Loop
  • C++ Break And Continue
  • C++ Arrays
  • C++ References
  • C++ Pointers
  • C++ Functions
  • C++ Function Overloading
  • C++ OOP
  • C++ Classes And Objects
  • C++ Class Methods
  • C++ Constructors
  • C++ Access Specifiers
  • C++ Encapsulation
  • C++ Inheritance
  • C++ Multilevel Inheritance
  • C++ Multiple Inheritance
  • C++ Inheritance Access
  • C++ Polymorphism
  • C++ Files
  • C++ Exceptions
  • C++ How To Add Two Numbers
  • Home
  • Courses
  • C++
  • C++ Polymorphism

C++ Polymorphism

Previous Next

Polymorphism

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 chapter; 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.):

Example

// Base class
class Animal {
  public:
    void animalSound() {
    cout << "The animal makes a sound \n" ;
  }
};

// Derived class
class Pig : public Animal {
  public:
    void animalSound() {
    cout << "The pig says: wee wee \n" ;
  }
};

// Derived class
class Dog : public Animal {
  public:
    void animalSound() {
    cout << "The dog says: bow wow \n" ;
  }
};

Now we can create Pig and Dog objects and override the animalSound() method:

Example

// Base class
class Animal {
  public:
    void animalSound() {
    cout << "The animal makes a sound \n" ;
  }
};

// Derived class
class Pig : public Animal {
  public:
    void animalSound() {
    cout << "The pig says: wee wee \n" ;
   }
};

// Derived class
class Dog : public Animal {
  public:
    void animalSound() {
    cout << "The dog says: bow wow \n" ;
  }
};

int main() {
  Animal myAnimal;
  Pig myPig;
  Dog myDog;

  myAnimal.animalSound();
  myPig.animalSound();
  myDog.animalSound();
  return 0;
}


Try it now


Why And When To Use "Inheritance" and "Polymorphism"?

- It is useful for code reusability: reuse attributes and methods of an existing class when you create a new class.



Practice Excercise Practice now

Previous Next
COMPANY
  • About us
  • Careers
  • Contact Us
  • In Press
  • People
  • Companies List
Products
  • Features
  • Coding Assessments
  • Psychometric Assessment
  • Aptitude Assessments
  • Tech/Functional Assessments
  • Video Assessment
  • Fluency Assessment
  • Campus
 
  • Learning
  • Campus Recruitment
  • Lateral Recruitment
  • Enterprise
  • Education
  • K 12
  • Government
OTHERS
  • Blog
  • Terms of Services
  • Privacy Policy
  • Refund Policy
  • Mart Category
Partner
  • Partner Login
  • Partner Signup

Copyright © RVR Innovations LLP 2025 | All rights reserved - Mytat.co is the venture of RVR Innovations LLP