问题
单项选择题
在一个派生类对象结束其生命周期时
A.先调用派生类的析构函数,后调用基类的析构函数
B.先调用基类的析构函数,后调用派生类的析构函数
C.如果基类没有定义析构函数,则只调用派生类的析构函数
D.如果派生类没有定义析构函数,则只调用基类的析构函数
答案
参考答案:B
解析: 在删除派生类对象时,应先执行派生类的析构函数,然后执行基类的析构函数。
在一个派生类对象结束其生命周期时
A.先调用派生类的析构函数,后调用基类的析构函数
B.先调用基类的析构函数,后调用派生类的析构函数
C.如果基类没有定义析构函数,则只调用派生类的析构函数
D.如果派生类没有定义析构函数,则只调用基类的析构函数
参考答案:B
解析: 在删除派生类对象时,应先执行派生类的析构函数,然后执行基类的析构函数。