使用VC6打开考生文件夹下的工程MyProj10。此工程包含一个源程序文件MyMain10.cpp。程序中定义了两个类Base和Derived,但类的定义并不完整。 请按要求完成下列操作,将类的定义补充完成: ①类Derived是基类Base公

admin2012-05-11  6

问题 使用VC6打开考生文件夹下的工程MyProj10。此工程包含一个源程序文件MyMain10.cpp。程序中定义了两个类Base和Derived,但类的定义并不完整。
   请按要求完成下列操作,将类的定义补充完成:
   ①类Derived是基类Base公有派生来的。请在注释“//* *1* *”之后添加适当的语句。
   ②完成构造函数Derived(int i)定义,采用初始化列表的方式使基类Base私有成员a初始化为i+1,类Derived的私有成员b初始化为i。请在注释“//* *2* *”之后添加适当的语句。
   ③完成类Derived的成员函数show()的类体外的定义。函数show()中要显式调用基类的show()函数,然后要输出私有成员b的值。请在注释“//* *3**”之后添加适当的语句。
   注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。
   源程序文件MyMain10.cpp清单如下:
   //MyMain10.cpp
   #include<iostream>
   using namespace std;
   class  Base
   {
   public:
     Base(int x)
     {
        a=x
     }
     void show()
     {
        cout<<a;
     }
   private:
     int a;
   };
   //*  *  *1*  *  *
   {
   public:
     //*  *  *  2  *  *  *
     void show();
   private:
     int b;
   };
   void Derived  ::  show()
   {
     //*  *  *  3  *  *  *
   }
   int main()
   {
     Derived d(1),  *pb;
     pb=&d;
     pb->show();
     return 0;
   }

选项

答案

解析
转载请注明原文地址:https://kaotiyun.com/show/c7ID777K
0

最新回复(0)