219: Create a C++ program that demonstrates function overriding and dynamic polymorphism in single inheritance. Define a base class "Shape" with a virtual function "displayInfo." Derive classes "Circle" and "Rectangle" from "Shape" and override the "displayInfo" function to provide specific information about each shape.

 

// Create a C++ program that demonstrates function overriding and dynamic polymorphism in single inheritance.
// Define a base class "Shape" with a virtual function "displayInfo." Derive classes "Circle" and "Rectangle"
// from "Shape" and override the "displayInfo" function to provide specific information about each shape.

#include <iostream>
using namespace std;
class Shape
{
public:
    virtual void displayInfo() { cout << "A closed geometrical figure is known as shape\n"; }
};

class Circle : protected Shape
{
public:
    void displayInfo() override
    {
        cout << "A circle is a closed two-dimensional figure in which the set of all "
             << "the points in the plane is equidistant from a given point called center.\n";
    }
};

class Rectangle : protected Shape
{
public:
    void displayInfo() override
    {
        cout << "a rectangle is a quadrilateral with four right angles. "
             << "It can also be defined as: an equiangular quadrilateral\n";
    }
};

int main()
{
    Circle c1;
    Rectangle r1;
    c1.displayInfo();
    cout << endl;
    r1.displayInfo();
    return 0;
}


Comments

Popular posts from this blog

153: Write a program to read an amount (integer value) and break the amount into smallest possible number of bank notes. Note: The possible banknotes are 500, 100, 50, 20, 10, 5, 2, and 1

206: Write a program to create a class named "Circle" which has the property "radius". Define functions to calculate the area and circumference of the circle.

221: // In Task 2, we discussed multilevel inheritance with parameterized constructors for Student, UndergraduateStudent, and GraduateStudent classes in a university management system. Can you explain the advantages of using multilevel inheritance with specific details about the functions and data members in these classes? How were the parameterized constructors (e.g., setting student name, age, and ID) used to ensure that each class in the hierarchy correctly initializes its properties, such as creating an UndergraduateStudent named "John," aged 20, with a student ID of 12345