Multiple inheritance is a feature in C++ where a class can inherit from more than one base class. This allows the derived class to have functionalities from multiple parent classes.
📌 Basic Example of Multiple Inheritance
🚀 Approach
- Class
A
→ Has a functionshowA()
. - Class
B
→ Has a functionshowB()
. - Class
C
(Derived from A & B) → Inherits both functions.
🔹 C++ Code: Basic Example of Multiple Inheritance
#include <iostream>
using namespace std;
// First Base Class
class A {
public:
void showA() {
cout << "This is Class A" << endl;
}
};
// Second Base Class
class B {
public:
void showB() {
cout << "This is Class B" << endl;
}
};
// Derived Class from A and B
class C : public A, public B {
public:
void showC() {
cout << "This is Class C" << endl;
}
};
int main() {
C obj;
obj.showA(); // Inherited from A
obj.showB(); // Inherited from B
obj.showC(); // Defined in C
return 0;
}
🔹 Output
This is Class A
This is Class B
This is Class C
📌 Addition using Multiple Inheritance
🚀 Approach
- Class
Num1
→ Stores first number. - Class
Num2
→ Stores second number. - Class
Sum
(Derived from Num1 & Num2) → Computes the sum.
🔹 C++ Code: Addition using Multiple Inheritance
#include <iostream>
using namespace std;
// First Base Class
class Num1 {
protected:
int num1;
public:
void setNum1() {
cout << "Enter first number: ";
cin >> num1;
}
};
// Second Base Class
class Num2 {
protected:
int num2;
public:
void setNum2() {
cout << "Enter second number: ";
cin >> num2;
}
};
// Derived Class from Num1 and Num2
class Sum : public Num1, public Num2 {
public:
void displaySum() {
cout << "Sum = " << num1 + num2 << endl;
}
};
int main() {
Sum obj;
obj.setNum1();
obj.setNum2();
obj.displaySum();
return 0;
}
🔹 Example Output
Enter first number: 5
Enter second number: 10
Sum = 15
📌 Explanation
Num1
class → Takes first number.Num2
class → Takes second number.Sum
class (inheritsNum1
&Num2
) → Adds both numbers.
🔹 Multiple inheritance is useful when combining functionalities from different classes!
🚀 Let me know if you need more examples! 🚀
0 Comments