参考答案和解析
正确答案:C
解析:由于AA和BB都是类的定义,在类定义中无法声明一个自己的对象,所以在BB的类定义中,企图声明一个BB类的对象,是非法的。所以本题选择C)。
更多“有如下两个类定义:class AA{};class BB{AA v1,*v2;BB v3;int*v4;};其中有一个成员变量的定义是错 ”相关问题
  • 第1题:

    有如下类定义: classAA{ inta: public: AA(intn=0):a(n)() }; classBB:publicAA{ pubilc: BB(intn)____ }; 其中横线处缺失部分是()。

    A.:a(n){}

    B.:AA(n){}

    C.{a(n);}

    D.{a=n;}


    正确答案:B
    B。【解析】需要实现父类构造函数。

  • 第2题:

    有如下两个类的定义: class AA{}; class BB{ AA vl,*v2; BB v3: int*v4: }; 其中有一个成员变量的定义是错误的,这个变量是

    A.v1

    B.v2

    C.v3

    D.v4


    正确答案:C
    解析:在本类的数据成员定义中,不能定义本类的对象,否则就出现了递归定义,这是不允许的。

  • 第3题:

    8、设有下面的一个类定义: class AA { static void show(){ System.out.println(“我喜欢Java!”); } } class BB { void show(){ System.out.println(“我喜欢C++!”); } } 若已经使用AA类创建对象a和BB类创建对象b,则下面哪一个方法调用是正确的?()

    A.show() b.show()

    B.AA.show() BB.show()

    C.AA.show() b.show()

    D.a.show() BB.show()


    B

  • 第4题:

    有如下类定义: Class AA{ int a: PubliC: AA(int n=O):a(n){} }; Class BB:publiC AA{ publiC: BB(int n) }; 其中横线处的缺失部分是( )。

    A.:a(n){}

    B.:AA(n){}

    C.{a(n);}

    D.{a=n;}


    正确答案:B
    本题考查公用继承对基类成员的访问属性。公用继承中,基类的公用成员和保护成员在派生类中保持原有访问属性,其私有成员仍为基类私有,本题中若要给派生类继承下来基类的私有成员赋值,那么只能调用基类的成员函数来对它赋值,成员变量默认的访问权限为私有,即a为私有变量。所以本题答案为B。

  • 第5题:

    已知无向图G描述如下: G=(V,E) V={V1,V2,V3,V4,V5} E={(V1,V2),(V1,V4),(V2,V4),(V3,V4),(V2,V5),(V3,V4),(V3,V5)} 写出每个顶点的度。
    V1、V2、V3、V4、V5的度分别为:2,3,2,3,2。