问题
单项选择题
有以下程序: #include <iostream> using namespace std; class A { private:iht 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 Aprivate: int c; public: C(int k):A(k-2),B(k+2) c=k;} void disp(){ A::disp(); B::disp(); cout<<c<<endl;} }, int main() C obj(l0); 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的成员初始化列表。