单选题
有如下程序: #include
using namespace std; class Appliance{ public: Appliance() { cout<<'A'; } ~Appliance() { } }; class TV:public Appliance{ public: TV(int s=41):size(s) { cout<<'T'<
A、
T41
B、
AT41
C、
T41T41
D、
AT41AT41
【正确答案】
B
【答案解析】
解析:执行派生类构造函数的顺序是:1、调用基类构造函数,2、调用子对象构造函数,3、再执行派生类析构函数,4、执行基类的析构函数,所以本题中定义room1时,先调用基类构造函数输出A,然后执行TV的构造函数输出T41,而定义对象指针,并不会调用构造函数,所以什么也不输出,结果为AT41,B选项正确。
提交答案
关闭