您好,欢迎访问三七文档
第六章习题1.在例6.1程序基础上作一些修改。定义Point(点)类,由Point类派生出Circle(圆)类,再由Circle类派生出Cylinder(圆柱体)类。将类的定义部分分别作为3个头文件,对它们的成员函数的声明部分分别作为3个源文件(.cpp文件),在主函数中用#include命令把它们包含进来,形成一个完整的程序,并上机运行。2.请比较函数重载和虚函数。在概念和使用方式方面有什么区别?3.在例6.3的基础上作以下修改,并作必要的讨论。(1)把构造函数修改为带参数的函数,在建立对象时初始化。(2)先不将析构函数声明为virtual,在main函数中另设一个指向Circle类对象的指针变量,使它指向grad1。运行程序,分析结果。(3)不作第(2)点的修改而将析构函数声明为virtual,运行程序,分析结果。4.写一个程序,定义抽象基类Shape,由它派生出3个派生类:Circle(圆形)、Rectangle(矩形)、Triangle(三角形),用一个函数printArea分别输出以上三者的面积,3个图形的数据在定义对象时给定。C++面向对象程序设计25.写一个程序,定义抽象基类Shape,由它派生出5个派生类:Circle(圆形)、Square(正方形)、Rectangle(矩形)、Trapezoid(梯形)、Triangle(三角形)。用虚函数分别计算几种图形面积,并求它们的和。要求用基类指针数组,使它的每一个元素指向一个派生类对象。
本文标题:C++第六章习题
链接地址:https://www.777doc.com/doc-4220634 .html