C++——类的多继承
2024-09-06 10:42:08
多继承概念
- 一个类有多个直接基类的继承关系称为多继承
- 多继承声明语法
class 派生类名 : 访问控制 基类名1 , 访问控制 基类名2 , … , 访问控制 基类名n
{
数据成员和成员函数声明
};
- 类 C 可以根据访问控制同时继承类 A 和类 B 的成员,并添加
自己的成员
多继承的派生类构造和访问
- 多个基类的派生类构造函数可以用初始式调用基类构造函数初始化数据成员
- 执行顺序与单继承构造函数情况类似。多个直接基类构造函数执行顺序取决于定义派生类时指定的各个继承基类的顺序。
- 一个派生类对象拥有多个直接或间接基类的成员。不同名成员访问不会出现二义性。如果不同的基类有同名成员,派生类对象访问时应该加以识别
#include <iostream>
using namespace std; class Base1
{
public:
Base1(int b1)
{
this->b1 = b1;
}
void printB1()
{
cout<<"b1:"<<b1<<endl;
}
protected:
private:
int b1;
}; class Base2
{
public:
Base2(int b2)
{
this->b2 = b2;
}
void printB2()
{
cout<<"b2:"<<b2<<endl;
}
protected:
private:
int b2;
}; class B : public Base1, public Base2
{
public:
B(int b1, int b2, int c): Base1(b1), Base2(b2)
{
this->c = c;
}
void printC()
{
cout<<"c:"<<c<<endl;
}
protected:
private:
int c;
}; void main()
{
B b1(, , );
b1.printC();
b1.printB1();
b1.printB2();
cout<<"hello..."<<endl;
system("pause");
return ;
}
最新文章
- Hibernate总结(一)
- asp.net mvc 之旅—— 第四站 学会用Reflector调试我们的MVC框架代码
- Xcode6 ADD Copy Files Build Phase 是灰色的
- 20145236 冯佳 《Java程序设计》第1周学习总结
- 转--优化临时表使用,SQL语句性能提升100倍
- .NET MVC 依赖注入 来龙去脉
- 【转】第 02 天:在 Windows 平台必裝的三套 Git 工具
- Hibernate中HQL的日期差值计算,可计算相差多少秒
- Tomcat7.0设置虚拟文件夹
- 如何使用wait(), notify() and notifyAll() – Java
- Windbg查看调用堆栈(k*)
- 软考之路--从生活着手,看PV如何操作
- JDK开发环境配置
- 解决Maven web 项目 Cannot detect Web Project version. Please specify version of Web Project through ... 的错误
- Windows下安装MySQL5.7.18的方法
- Java源码阅读的真实体会(一种学习思路)
- maven创建父子关系的聚合项目
- python day 03作业答案
- SAS常用函数
- Android Dalvik和JVM的区别