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

admin2013-05-30  25

问题 下列类的定义中,有(   )处语法错误。    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

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

最新回复(0)