实验题目:第12章习题5程序验证
一、实验目的
- 上机验证《C++程序设计(第3版)》第12章习题5。
- 复习C++多态性与虚函数相关知识。
二、实验内容
详见一、实验目的
。
三、设计和编码
1. 本实验用到的理论知识
C++多态性与虚函数
2. 编码
程序清单如下
// ex5.cpp
// Encoding: UTF-8
/*
* 5.定义一个抽象类Shape,由它派上生出5个派生类:Circle(圆形)、
* Square(正方形)、Rectangle(矩形)、Trapezoid(梯形)、Triangle(三角形)。
* 用虚函数分别计算几种图形的面积,并求它们的和。
* 要求用基类指针数组,使它的每一个元素指向一个派生类对象。
*/
#include <iostream>
using namespace std;
//定义抽象基类Shape
class Shape
{
public:
virtual double area() const = 0; //纯虚函数
};
//定义Circle(圆形)类
class Circle : public Shape
{
public:
Circle(double r) : radius(r) {} //构造函数