单选题
有如下程序:
#include<iostream>
using namespace std;
class base{
public:
base(int x=0){cout<<x;}
};
class derived:public base{
public:
derived(int x=y){cout<<x;}
public:
base val;
};
int main(){
derived d(1);
return 0;
}
程序的输出结果是______。
【正确答案】
D
【答案解析】[解析] 本题考查基类成员和对象成员的初始化。题中,生成派生类derived对象d,先要初始化基类base和对象成员val,分别调用base类缺省构造函数各1次,输出两个0;再调用派生类derived的构造函数,输出1。最终输出结果为:001。