65,187
社区成员




基类:多边形
{virtual void show();}
三角形:public 多边形
{virtual void show();}
四边形:public 多边形
{virtual void show();}
五边形:public 多边形
{virtual void show();}
其他:public 多边形
{virtual void show();}
[当然还有其他特征]
template<typename T>
struct Point
{
T x_;
T y_;
};
template< typename T >
struct Line
{
Point<T> start_;
Point<T> end_;
};
template< typename T >
struct Polygon
{
vector<Line<T> > edge_;
};
//考察点会不会是类的继承,多态,比如:
class CPolygon
{
protected:
int width, height;
public:
void set_values (int a, int b)
{ width=a; height=b;}
};
class CRectangle: public CPolygon
{
public:
int area (void)
{
return (width * height);
}
};
class CTriangle: public CPolygon
{
public:
int area (void)
{
return (width * height / 2);
}
};
class Polygon
{
public:
//缺省构造函数
Polygon();
//拷贝构造函数
Polygon(const Polygon& rPoly);
virtual ~Polygon();
//计算面积
virtual int iCalArea(void);
//计算周长
virtual int iCalGrith(void);
private:
//存储定点
vector<int> m_vNode;
};