问题
单项选择题
若有以下程序: #include<iostream> using namespace std; class A {private: int a; public: A(int i) {a=i;} void disp() {cout<<a<<“,”;}}; class B {private: int b; public: B(int j {b=j;} void disp(){cout<<b<<“,”;}}; class C:public B,public A {private: int C; public: C(int k);A(k-2),B(k+2) {c=k;} void disp() {Accdisp(); B::disp(); cout<<c<<endl;}}; int main() {C obj(10); Obj.disp(); return 0;} 程序执行后的输出结果是( )。
A.10,10,10
B.10,12,14
C.8,10,12
D.8,12,10
答案
参考答案:D
解析: 本题考查派生类构造函数的使用。派生类C具有多重继承关系,所以在派生类C的构造函数中应该包含基类A和B的成员初始化列表。