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

admin2009-02-15  55

问题 有以下程序:      #include <iostream>      using namespace std;      class A      {      public:         A(int i,int j)       {           a=i;           b=j;       }         void move(int x,int y)       {           a+=x;           b+=y;       }         void show()       {              cout<<a<<","<<b<<end1;       }      private:         int a,b;     };      class B: private A     {      public:         B(int i,int j): A(i,j) {}         void fun()       {           move(3,5);                                                     }        void fl ()     {      A::show();      }     };      int main()     {             B d(3,4);       d.fun();       d.f1();       return 0;    }    程序执行后的输出结果是

选项 A、3,4
B、6,8
C、6,9
D、4,3

答案4

解析 本题考核派生类的应用。本题中,类B是类A的私有派生类,在类B的成员函数fun中调用基类A的成员函数move,并传入实参3和5。在类B的成员函数 fl中调用基类A的成员函数show,来显示基类数据成员a和b的值。主函数main中,定义了派生类B的对象d,并赋初值3和4。然后调用对象d的成员函数fun和 fl,通过上述对函数fun和n的功能的描述可知,程序最后输出6和9。
转载请注明原文地址:https://kaotiyun.com/show/Vzjp777K
0

最新回复(0)