在多继承时,若基类之间有同名成员,通过派生类对象访问该同名成员时将出现访问时的二义性,可以采用类名限定或同名隐藏规则来解决;当派生类从多个基类派生,而这些基类又从同一个基类派生,则在访问此共同基类中的成员时,将产生二义性,可以采用虚基类或直接基类名限定来解决。
举一反三
- 下列关于二定义性的说法错误的是 ______。 A: 派生类中的成员与基类的成员同名,在调用时可能存在二义性 B: 派生类的二个基类是有同名成员,调用这一成员时可能产生有二义性 C: 派生类的二个基类是从同一共同基类派生出来,调用基类的成员时可能存在二义性 D: 使用成员限定可解决二义性问题
- 在多继承时,基类与派生类之间,或基类之间出现同名成员时,将出现访问时的二义性(不确定性)
- 下列关于多继承的描述,错误的是() A: 一个派生类对象可以拥有多个直接或间接基类的成员 B: 在多继承时不同的基类可以有同名成员 C: 对于不同基类的同名成员,派生类对象访问它们时不会出现二义性 D: 对于不同基类的不同名成员,派生类对象访问它们时不会出现二义性
- 下列有关继承和派生的叙述中,错误的是 A: 派生类对象可以赋值给基类对象 B: 派生类的成员函数可以访问基类的所有成员 C: 如果派生类中有未实现基类的纯虚函数,则该派生类是一个抽象类。 D: 如果一个派生类私有继承其基类,则在main函数中,该派生类对象不能访问基类保护成员
- 当用私有继承方式从基类派生一个类时,基类中的所有成员在派生类中都成为私有成员。