单选题
👁️ 浏览量:

试题题干

假设ClassY:publicX,即类Y是类X的派生类,则说明一个Y类的对象时和删除Y类对象时,调用构造函数和析构函数的次序分别为(    )

A

X,Y;Y,X

B

X,Y;X,Y

C

Y,X;X,Y

D

Y,X;Y,X

参考答案

正确答案:

试题解析

派生类构造函数必须对这三类成员进行初始化,其执行顺序:调用基类构造函数;调用子对象的构造函数;派生类的构造函数体。

生成派生类对象时,先执行各基类的构造函数,调用顺序为派生继承时的基类声明顺序,为X,Y。

派生类对象消亡时,析构函数各部分执行次序与构造函数相反。先执行自身的析构函数,再执行基类的析构函数,为Y,X。

故本题选A。