继承:通过继承机制,可以利用已有的数据类型来定义新的数据类型。所定义的新的数据类型不仅拥有新定义的成员,而且还同时拥有旧的成员。
派生:我们称已存在的用来派生新类的类为基类,又称为父类。由已存在的类派生出的新类称派生类,又称为子类。
子类对基类成员的访问权限:子类能访问基类私有和保护成员。
继承方式:继承方式有公有继承,私有继承和保护继承,其子类分别作为基类的公有/私有/保护成员。
构造函数和析构函数的调用顺序:按照继承顺序先后调用基类构造函数。
虚基类:虚基类的基本原则是内存中只有构造函数的一份拷贝,避免二义性。
未使用虚基类virtual时,Bicycle和Motorcycle的派生类Motorcar会调用两次基类Vehicle构造函数,
而使用虚基类virtual后,派生类Motorcar只会调用一次基类Vehicle构造函数。
虚基类的基本原则是在内存中只有基类成员的一份拷贝。