基类对象的初始化1、类等级:类X是类Y的基类,X被称为类Y的直接基类。若类Y是类Z的直接基类,称类X是类Z的间接基类。这样,类X、Y、Z形成了一个类等级。在类等级中,若以各类只有一个直接基类,这种继承关系称为单继承。若一个类有多个直接基类,这种继承关系称为多继承。在一个派生类中,要访问派生类成员同名的基类成员,使用:类名::成员 的方式。其中类名可以是某个间接基类的类名。2、基类对象的初始化在建立一个类等级后,通常是通过创建某个派生类的对象来使用者各类等级,包括隐含地使用基类的数据和函数。但是基类往往有构造函数或有参数化的构造函数。派生类初始化积累构造函数的问题:C++在派生类的构造函数中提供初始化基类的机制(用表达式的方式)C++中,派生类构造函数的声明为: 派生类构造函数(变元表):基类(变元表){……….} 每个派生类只会负责其直接基类的调用。如果基类使用缺省的构造函数或不带参数的构造函数,那么派生类构造函数中“:”后面的“基类(变元表)”项可省去,但是派生类构造函数执行时仍然会隐式地调用基类构造函数执行。执行构造函数时,先执行基类的构造函数,在执行派生类的构造函数。执行析构函数时,先执行派生类的析构函数,在执行基类的析构函数。

评论