参考答案和解析
正确答案:解决二义性问题
解决二义性问题 解析: C++中可以将共同基类设置为虚基类,这时从不同的路径继承过来的该类成员在内存中只有一个拷贝。这样就解决同名成员的二义性。
更多“C++中,设置虚基类的目的是【】。 ”相关问题
  • 第1题:

    下列关于虚基类的描述中错误的是

    A.虚基类子对象的初始化由最派生类完成

    B.虚基类子对象的初始化次数与虚基类下面的派生类个数有关

    C.设置虚基类的目的是消除二义性

    D.带有虚基类的多层派生类构造函数的成员初始化列表中都要列出对虚基类构造函数调用


    正确答案:B
    解析:虚基类主要是为了消除在多重继承中的二义性问题。虚基类对象的初始化次数只于对象的多少有关,与类的层次结构是没有关系的。故本题正确答案为B。

  • 第2题:

    下列关于虚基类的描述中,错误的是( )。

    A.虚基类子对象的初始化由最派生类完成

    B.虚基类子对象的初始化次数与虚基类下面的派生类个数有关

    C.设置虚基类的目的是消除二义性

    D.带有虚基类的多层派生类构造函数的成员初始化列表中都要列出对虚基类构造函数的调用


    正确答案:B

  • 第3题:

    设置虚基类的目的是__[12]__,通过__[13]__表示虚基类。


    正确答案:[12]解决二义性问题 [13]用关键字virtual
    [12]解决二义性问题 [13]用关键字virtual

  • 第4题:

    下列关于虚基类的描述中,错误的是( )。

    A.虚基类子对象的初始化由派生类完成

    B.虚基类子对象的初始化次数与虚基类下面的派生类的个数有关

    C.设置虚基类的目的是消除二义性

    D.带有虚基类的多层派生类构造函数的成员初始化列表中都要列出对虚基类构造函数的调用


    正确答案:B
    解析:本题考核虚基类的初始化。从虚基类直接或间接派生的派生类的构造函数的成员初始化列表中都要列出对虚基类构造函数的调用,但只有用于建立对象的派生类的构造函数调用虚基类的构造函数,而该派生类的所有基类中列出的对虚基类的构造函数的调用在执行中被忽略,从而保证了对虚基类子对象只初始化一次。

  • 第5题:

    设置虚基类的目的是______,通过______表示虚基类。


    正确答案:解决二义性问题 用关键字 virtual
    解决二义性问题 用关键字 virtual