单项选择题

若有以下程序:
#include<iostream>
using namespace std;
class data
public:
int x;
data(int x)
data::x=x;

class A
private:
data d1;
public:
A(int x):d1(x)
void dispa()
cout<<d1.X<<",";

classB:public A
private:
data d2;
public:
B(int x):A(x-1),d2(x)
void dispb()
cout<<d2.x<<end1;

class C:public B
public:
C(int x):B(x-1)
void disp()

dispa();
dispb();


int main()
C obj(5);
obj.disp();
return 0;
程序执行后的输出结果是

A.5,5
B.4,5
C.3,4
D.4,3