选择题   下列类的定义中,有______处语法错误。
      class Base
    {
      public:
          Base(){}
      Base(int i)
      {
          data=i;
      }
      private:
          int data;
    };
      class Derive: public Base
    {
      public:
          Derive(): Base(0){}
          Derive(int x)
        {
              d=x;
        }
        void setvalue(int i)
      {
          data=i;
      }
      private:
        d;
    };
 
【正确答案】 B
【答案解析】本题考核派生类的定义和成员的访问权限。第一处错误:在派生类的构造函数Derive(int x)中没有调用基类的构造函数对基类对象初始化:第二处错误:数据data是基类Base的私有成员,派生类Derive不能访问,所以在函数setvalue中对data的赋值是错误的。