#include <iostream>
using namespace std;
class Shape//虚基类(纯虚)
{
public:
virtual double getArea() const = 0; //输出面积的函数
virtual void print() const = 0; //输出对象的函数,后面估计要运算符重载
virtual ~Shape(){}
};
class Circle : public Shape //圆形
{
public:
Circle( int = 0, int = 0, double = 0.0 ); //构造函数,初始化圆心坐标和圆的半径
virtual double getArea() const; // 返回面积,继承了纯虚类,所以这里的函数随便写不写virtual都是虚的
virtual void print() const; // 输出Circle 类对象t
private:
int x,y; // 圆心座标
double radius; // 圆半径
}; // 派生类Circle定义结束
class Rectangle : public Shape
{
public:
Rectangle( int = 0, int = 0); // 构造函数,初始化长和宽
virtual double getArea() const; // 返回面积,
void print() const; // 输出Rectangle类对象,这里就没有写virtual,但是由于继承了上面的纯虚,所以还是虚
protected:
int a,b; // 矩形的长和宽
}; // 派生类
class Sanjiaoxin :public Shape
{
public:
创建一个三角形类
最新推荐文章于 2023-11-02 20:03:19 发布
这篇博客介绍了一个使用C++实现的面向对象编程示例,创建了多个几何形状的类,包括Circle(圆形)、Rectangle(矩形)和Sanjiaoxin(三角形)。这些类从一个虚基类Shape派生,Shape包含纯虚函数getArea()和print(),用于计算面积和打印对象信息。博客展示了如何实例化这些类的对象并调用它们的方法来显示面积。
摘要由CSDN通过智能技术生成