问题
单项选择题
下列关于虚基类的叙述中,错误的是
A.使用虚基类可以消除由多继承产生的二义性
B.构造派生类对象时,虚基类的构造函数只被调用一次
C.声明“class B:virtual public A”说明类B为虚基类
D.建立派生类对象时,首先调用虚基类的函数
答案
参考答案:C
解析: 使用虚基类的目的就是为了解决多继承路径下对基类成员的访问的二义性问题。一旦继承虚基类,那么在构造派生类对象时,虚基类构造函数就只调用一次。派生类对象调用构造函数和普通类对象一样,都是先调用基类构造函数,然后调用派生类构造函数。