当前位置: 首页 > news >正文

网站建设行业发展史哪里做网站便宜

网站建设行业发展史,哪里做网站便宜,wordpress访问加密,黑彩网站充值就给你做单子题目内容: 编写程序,声明抽象基类Shape,由它派生出3个派生类:Circle、Rectangle、Triangle,用虚函数分别计算图形面积,并求它们的和。要求用基类指针数组,使它每一个元素指向一个派生类对象。 …

题目内容:

编写程序,声明抽象基类Shape,由它派生出3个派生类:Circle、Rectangle、Triangle,用虚函数分别计算图形面积,并求它们的和。要求用基类指针数组,使它每一个元素指向一个派生类对象。

输出样例如下如图:

代码如下:

#include <iostream>
#include <cmath>
using namespace std;class Shape
{
public:virtual double Area() = 0;virtual ~Shape() {}
};class Circle : public Shape
{
private:double radius;
public:Circle(double r) : radius(r) {}virtual double Area(){return 3.14 * radius * radius;}
};class Rectangle : public Shape
{
private:double width, height;
public:Rectangle(double w, double h) : width(w), height(h) {}virtual double Area(){return width * height;}
};class Triangle : public Shape
{
private:double base, height;
public:Triangle(double b, double h) : base(b), height(h) {}virtual double Area(){return 0.5 * base * height;}
};int main()
{Shape* shapes[3];shapes[0] = new Circle(5.0);shapes[1] = new Rectangle(4.0, 6.0);shapes[2] = new Triangle(3.0, 4.0);double totalArea = 0.0;for (int i = 0; i < 3; ++i){totalArea += shapes[i]->Area();cout << "Shape " << i + 1 << "面积为: " << shapes[i]->Area() << endl;}cout << "总面积为: " << totalArea << endl;return 0;
}

这段 C++ 代码实现了一个简单的面向对象程序,用于计算不同形状(圆形、矩形、三角形)的面积以及它们的总面积。下面将对代码进行详细解释:
1. 抽象基类Shape类的定义

  • virtual double Area() = 0;:这是一个纯虚函数,意味着Shape类是一个抽象基类,不能实例化对象。所有继承自Shape的派生类都必须实现这个Area函数,用于计算各自形状的面积。
  • virtual ~Shape() {}:虚析构函数,确保在通过基类指针删除派生类对象时,能够正确调用派生类的析构函数,避免内存泄漏。

2. 派生类Circle的定义

  • class Circle : public ShapeCircle类继承自Shape类,使用public继承方式,意味着Shape类的公有成员在Circle类中仍然是公有的。
  • double radius;:私有成员变量,用于存储圆的半径。
  • Circle(double r) : radius(r) {}:构造函数,用于初始化圆的半径。
  • virtual double Area():重写基类的纯虚函数Area,实现计算圆面积的功能,圆的面积公式为,这里取 3.14。

3. 派生类Recently的定义

  • class Rectangle : public ShapeRectangle类继承自Shape类。
  • double width, height;:私有成员变量,分别存储矩形的宽度和高度。
  • Rectangle(double w, double h) : width(w), height(h) {}:构造函数,用于初始化矩形的宽度和高度。
  • virtual double Area():重写基类的纯虚函数Area,实现计算矩形面积的功能。

4. 派生类Triangle的定义

  • class Triangle : public ShapeTriangle类继承自Shape类。
  • double base, height;:私有成员变量,分别存储三角形的底和高。
  • Triangle(double b, double h) : base(b), height(h) {}:构造函数,用于初始化三角形的底和高。
  • virtual double Area():重写基类的纯虚函数Area,实现计算三角形面积的功能。

5. 主函数

  • Shape* shapes[3];:定义一个基类指针数组,用于存储不同形状对象的指针。
  • shapes[0] = new Circle(5.0);shapes[1] = new Rectangle(4.0, 6.0);shapes[2] = new Triangle(3.0, 4.0);:使用new运算符动态创建CircleRectangleTriangle对象,并将它们的指针存储在shapes数组中。
  • double totalArea = 0.0;:用于存储所有形状的总面积。
  • for (int i = 0; i < 3; ++i):遍历shapes数组,调用每个形状对象的Area函数计算面积,并累加到totalArea中,同时输出每个形状的面积。
  • cout << "总面积为: " << totalArea << endl;:输出所有形状的总面积。

觉得有帮助就给博主点个关注叭~~

有问题的可以私信或者在评论区一起交流

友友们一起加油叭QAQ

http://www.tj-hxxt.cn/news/26551.html

相关文章:

  • 西宁个人网站建设网络推广有前途吗
  • 香港特别行政区政府网站抖音关键词排名查询工具
  • 广州市建设企业网站报价推广小程序拿佣金
  • 有什么做设计的兼职网站友情链接网站免费
  • 网站建设赶集网百度网站大全旧版
  • 唐河企业网站制作价格合肥网络推广服务
  • 做网站商城需要什么软件搜狗网页
  • 上海找做网站公司好百度推广登录平台登录
  • 云南网站建设锐网北京网站优化企业
  • 梧州网站开发十大免费引流平台
  • 单页网站制作教程海外推广营销 平台
  • 网站引导页作用百度账号注册
  • Wordpress在中国建站南京seo公司教程
  • 做网站后期费用长沙网络公司排名
  • 网站建设最低要求优化公司排名
  • 点赞排行 wordpress 主题淮南网站seo
  • 网站重构div css论文seo教程最新
  • 基于h5的个人网站建设肇庆疫情最新消息
  • 网站设计标杆企业百度seo
  • ui设计与网站建设网络推广营销方案免费
  • 做阿里巴巴网站图片谷歌浏览器下载手机版安卓
  • 德保网站建设网站提交工具
  • 搭建一个网站需要哪些技术百度关键词优化有效果吗
  • 怎么用PHP做网站留言板短视频怎么赚钱
  • 企业网站功能长沙seo排名优化公司
  • 深圳网站开发公司有哪些沈阳网站制作
  • 怎么设计一个自己的网站最好用的搜索神器
  • 网站如何做网站解析百度关键词搜索指数
  • 小说主角重生之后做网站网站优化外包顾问
  • 招聘网站的销售怎么做成都新一轮疫情