问题 单项选择题

有如下类定义:
class XX
int xx;
public:
XX( ):xx(0)eout<<’A’;
XX(int n):xx(n)tout<<’B’;

class YY:public XX
mt yy;
public:
YY( ):yy(0)i cout<<yy;
YY(int n):XX(n+1),yy(n)cout<<yy;
YY(int m,int n):XX(in),yy(n)cout<<yy;

下列选项中,输出结果为A0的语句是

A.YY y1(0,0);

B.YY y2(1);

C.YY y3(0);

D.YY y4;

答案

参考答案:D

解析: 派生类对象创建时,先调用基类的构造函数,然后调用派生类的构造函数。若要打印出“AO”,显然是分别调用了基类和派生类的无参构造函数,故答案为D。

单项选择题
名词解释