编写一个程序,其中有一个汽车类Vehicle,它具有一个需要传递参数的构造函数,类中的数据成员:车轮个数wheels和车重weight为保护属性;小车类Car是它的私有派生类,其中包含载人数passager_load;卡车类Truck是Vehicle的私有派生类,其中包含载人数passager_load和载重量payload。每个类都有相关数据的输出方法。
查看答案
分别定义Teacher(教师)类和Cadre(干部)类,采用多重继承方式由这两个类派生出新类Teacher_Cadre(教师兼干部)类。(1) 在两个基类中都包含姓名、年龄、性别、地址、电话等数据成员。(2) 在Teacher类中还包含数据成员title(职称),在Cadre类中还包含数据成员post(职务),在Teacher_Cadre类中还包含数据成员wages(工资)。(3)对两个基类中的姓名、年龄、性别、地址、电话等数据成员用相同的名字,在引用这些数据成员时,指定作用域。(4)在类体中声明成员函数,在类外定义成员函数。(5)在派生类Teacher_Cadre的成员函数show中调用Teacher类中的display函数,输出姓名、年龄、性别、职称、地址、电话,然后再用cout语句输出职务与工资。
基类中的私有成员在派生类的访问权限为()
A. protected
B. private
C. 不可访问
D. public
关于多重继承二义性的描述,错误的是()
A. 一个派生类是从具有共同的间接基类的两个直接基类派生来的,派生类对该公共基类的访问可能出现二义性
B. 解决二义性最常用的方法是作用域运算符对成员进行限定
C. 派生类的多个基类中存在同名成员时,派生类对这个成员访问可能出现二义性
D. 派生类和它的基类中出现同名函数时,将可能出现二义性
在如下继承层次下,当实例化有派生类对象时,调用构造函数的顺序为:class Base{…};class Base1: virtual Base{…};class Base2: virtual Base{…};class Derived : public Base2, public Base1{…};
A. Base(), Base2(), Base1(), Drived()
Base(), Base1(), Base(), Base2(), Drived()
C. Base(), Base2(), Base(), Base1(), Drived()
D. Base(), Base1(), Base2(), Drived()