C++ 中的多重继承
多重继承是指一个类继承自多个基类。因此,该类可以使用多重继承从多个基类继承特性。这是面向对象编程语言(例如 C++)的一个重要特性。
下图演示了多重继承 −

以下给出了在 C++ 中实现多重继承的程序 −
示例
#include <iostream>
using namespace std;
class A {
public:
int a = 5;
A() {
cout << "Constructor for class A" << endl;
}
};
class B {
public:
int b = 10;
B() {
cout << "Constructor for class B" << endl;
}
};
class C: public A, public B {
public:
int c = 20;
C() {
cout << "Constructor for class C" << endl;
cout<<"Class C inherits from class A and class B" << endl;
}
};
int main() {
C obj;
cout<<"a = "<< obj.a <<endl;
cout<<"b = "<< obj.b <<endl;
cout<<"c = "<< obj.c <<endl;
return 0;
}输出
上面程序的输出如下 −
Constructor for class A Constructor for class B Constructor for class C Class C inherits from class A and class B a = 5 b = 10 c = 20
在上面的程序中,定义了类 A 和 B。如下所示 −
class A {
public:
int a = 5;
A() {
cout << "Constructor for class A" << endl;
}
};
class B {
public:
int b = 10;
B() {
cout << "Constructor for class B" < endl;
}
};类 C 从类 A 和 B 继承。这是多重继承的一个示例。类 C 的定义如下所示 −
class C: public A, public B {
public:
int c = 20;
C() {
cout << "Constructor for class C" << endl;
cout<<"Class C inherits from class A and class B" << endl;
}
};在 main() 函数中,定义了类 C 的一个对象 obj。自动调用类 A、B 和 C 的构造函数并显示它们的内容。然后打印 a、b 和 c 的值。它们分别是类 A、B 和 C 的数据成员。此代码段如下所示 −
C obj; cout<<"a = "<< obj.a <<endl; cout<<"b = "<< obj.b <<endl; cout<<"c = "<< obj.c <<endl;
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP