图形 圆 矩形 类

来源:互联网 发布:java工程师招聘上海 编辑:程序博客网 时间:2024/04/29 23:15

求图形的面积 类

1.定义类

#ifndef GRAPHDATA_H_
#define GRAPHDATA_H_
#include <stdio.h>
const double PI = 3.1415926;
class Graph
{
public:
Graph();
virtual ~Graph();


public:
double GetArea();


protected:
double mArea;
};


inline double Graph::GetArea()
{
return mArea;
}




class Circle:public Graph
{
public:
Circle();
virtual ~Circle();


public:
void SetRadious(double dRadious);
double GetRaious();


private:
double mRadious;
};


inline double Circle::GetRaious()
{
return mRadious;
}




class Rectangle:public Graph
{
public:
Rectangle();
virtual ~Rectangle();


public:
void SetWH(double dWidth, double dHeight);
double GetWidth();
double GetHeight();


private:
double mWidth;
double mHeight;


};
inline double Rectangle::GetWidth()
{
return mWidth;
}


inline double Rectangle::GetHeight()
{
return mHeight;
}


#endif


实现类:

#include "GraphData.h"


Graph::Graph()
{
mArea = 0.0;


}


Graph::~Graph()
{


}


Circle::Circle()
{


}


Circle::~Circle()
{
mRadious = 0.0;
}


void Circle::SetRadious( double dRadious )
{
mRadious = dRadious;
mArea = PI*dRadious*dRadious;
}




Rectangle::Rectangle()
{
mHeight = 0.0;
mWidth =  0.0;
}


Rectangle::~Rectangle()
{


}


void Rectangle::SetWH( double dWidth, double dHeight )
{
mHeight = dHeight;
mHeight = mWidth;
mArea = mWidth*mHeight;
}

3.调用类

// Graph.cpp : 定义控制台应用程序的入口点。
//


#include "stdafx.h"
#include "GraphData.h"




int _tmain(int argc, _TCHAR* argv[])
{
Circle* pCircle = new Circle;
double dArea = pCircle->GetArea();


pCircle->SetRadious(2.5);
dArea = pCircle->GetArea();


Rectangle* pRect = new Rectangle;
dArea = pRect->GetArea();
pRect->SetWH(3,2);
dArea = pRect->GetArea();


return 0;
}


原创粉丝点击