若有以下程序: #include <iostream> using namespace std; class A { private: int a; public: A(int i) {

admin2013-02-27  26

问题 若有以下程序:    #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 ()      {        A::disp();        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的成员初始化列表。
转载请注明原文地址:https://jikaoti.com/ti/U7L0FFFM
0

最新回复(0)