概念:
继承:在定义一个新的类B时,如果该类与某个已有的类A相似(指的是B拥有A的全部特点),那么就可以把A作为一个基类,而把B作为基类的一个派生类(也称子类)
- 派生类可以对基类进行扩充(成员函数和成员变量)
- 派生类一经定义后,可以独立使用,不依赖于基类。
- 派生类拥有基类的全部成员函数和成员变量,无论时private、protected、public。
- 但在派生类中的各个成员函数中,不能访问基类的private成员。
定义:
class 派生类名: public 基类名
{
};
内存空间:
派生类对象的体积,相当于基类对象的体积再加上派生类对象自己的成员变量的体积。派生类中基类对象的存储位置位于派生类对象新增成员变量之前。
注:
派生类中可以定义一个于基类中名字相同的函数(不算重复定义,也不算重载),属于覆盖,调用时和普通的成员函数一样:
派生类对象.函数名
派生类::函数名
派生类对象指针->函数名
但调用基类中的同名函数时:
基类::函数名