下列类的定义中,有( ) 处语法错误。 class Base  { public: Base(){} Base(int i) { data=i;

admin2010-03-29  52

问题 下列类的定义中,有(   ) 处语法错误。       class Base       {       public:            Base(){}       Base(int i)        {          data=i;        }      private:         int data;      };      class Derive: public Base      {      public:            Derive(): Base(O) { }            Derive(int x)          {             d=x;          }         void setvalue(int i)        {            data=i;       }      private:         d;     };

选项 A、1
B、2
C、3
D、4

答案2

解析 本题考核派生类的定义和成员的访问权限。第一处错误:在派生类的构造函数Derive(int x)中没有调用基类的构造函数对基类对象初始化:第二处错误:数据data是基类Base的私有成员,派生类Derive不能访问,所以在函数setvalue中对data的赋值是错误的。
转载请注明原文地址:https://kaotiyun.com/show/hDjp777K
0

最新回复(0)