实验7 类的继承与派生-加强

实验内容
1、定义一个车基类,派生(公有派生)出自行车类和汽车类,并以自行车类和汽车类为基类共同派生(公有派生)出摩托车类,每个类都要定义带有参数的构造函数。观察自行车类、汽车类和摩托车类对象定义时构造函数、析构函数的调用顺序。最后将车基类定义为虚基类,再观察程序结果。(没有思路的同学可参考实验指导书203页完成)
2、定义Base类及它的公有派生类Derived类,两个类中均定义带参数的构造函数,基类中定义函数Show(),派生类中也定义一个同名的Show(),二者输出内容有所区别。主函数中定义基类的对象,指针,引用,也定义派生类的对象。
(1)对赋值兼容的四种情况作测试,对每行的输出结果进行观察,理解赋值兼容何时调用基类的成员函数,什么情况下才会调用派生类的成员函数。
(2)在主函数的return 0;语句前增加如下4条语句,观察并记下编译时的报错信息,观察赋值兼容的不可逆性。(没有思路的同学可参考实验指导书207页完成)
Derived d5=b1; //b1为已定义的基类对象
Derived &d6=b1; //b1为已定义的基类对象
Derived *d7=&b1; //b1为已定义的基类对象
d7=b3; //b3为已定义的基类指针
3、程序功能:定义一个类Location,用数据成员x,y表示该类对象在二维坐标系中的坐标位置,用函数成员move移动对象坐标位置,用函数成员print输出相应的类名(cout<<“Location”<

你可能感兴趣的:(c++)