Category: Concepts of Inheritance, Pointers, Polymorphism and Virtual Functions in C++

Understand the concepts of Inheritance, Pointers, Polymorphism and Virtual Functions in C++ programming language

Introduction to Inheritance 0

Introduction to Inheritance in C++

Let me introduce you to the concept of Inheritance in C++. Reusability is yet another important feature of C++. It is always nice if we could reuse something that already exists rather than trying to create the same all over again. It would not only save the time and money but also reduce frustration and increase readability. For instance, the reuse of a class that has already been tested, debugged and used many time can save us the effort of developing and testing the same again. Fortunately, C++ strongly supports the concept of reusability.The C++ classes can be reused in...

Multiple Inheritance in Cpp 1

Multiple Inheritance in C++

Inheritance in which a derived class is derived from several base class is known as multiple inheritance. A class can inherit the attributes of two or more classes as shown in fig. below. This is known as multiple inheritance. Multiple inheritance allows us to combine the features of several existing classes as a starting point for defining new classes. It is like a child inheriting the physical features of one parent and the intelligence of another. The syntax of a derived class with multiple base class is as follows: class D : visibility B-1, visibility B-2… { … … (Body...

Multi-Level Inheritance in Cpp 3

Multi-Level Inheritance in C++

The mechanism of deriving a class from another derived class is known as multi-level inheritance in C++ It is not uncommon that a class is derived from another derived class as shown below: The class A serves as a base class for the derived class B which in turn serves as a base class for the derived class C. The class B is known as intermediate base class since it provides a link for the inheritance between A and C. The chain A -> B -> C is known as inheritance path. A derived class with multi-level inheritance is declared...

Protected-Inheritance-in-Cpp 1

Protected Inheritance in C++

Understanding the concept of Protected Inheritance in C++. A special mention of visibility label protected: We have just seen how to increase the capabilities of an existing class without modifying it. We have also seen that a private member of a base class cannot be inherited and therefore its is not available for the derived class directly. What do we do if the private data needs to be inherited by a derived class? This can be accomplished by modifying the visibility limit of the private member by making it public. But, this would make it accessible to all the other...