C++语言程序设计实验报告
C++语言程序设计实验报告(七)
基础题一
实验任务:
定义一个Shape基类,在此基础上派生出Rectangle和Circle,二者都有GetArea()函数计算对象的面积。使用Rectangle类创建一个派生类Square。
分析:
首先定义shape类,并在其中定义出功能函数getX()和getY(),然后派生出Rectangle和Circle类,利用Rectangle中的参数对shape的数据进行初始化,调用基类公有成员函数,Circle也一样,但两个函数中各自的计算面积的函数的表达式不一样, 然后在main函数中输出各项数据即可。
代码:
#include <iostream>
using namespace std;
#define n 3.14
class Shape
{
public:
Shape(float x=0,float y=0):x(x),y(y) {}
float GetX() {return x;}
float GetY() {return y;}
~Shape() {};
private:
float x,y;
};
class Rectangle:public Shape{
public:
Rectangle(float x,float y):Shape(x,y),a(a),b(b){}
float GetA() {return Shape::GetX();}
float GetB() {return Shape::GetY();}
GetArea() {return GetA()*GetB();}
~Rectangle() {};
private:
float a,b;
};