当前位置: 首页 > 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.yayakq.cn/news/112000/

相关文章:

  • 网站物理结构优化包含网页优化吗个人网站做影视
  • 企业网站建设应用研究论文wordpress小工具文件
  • 网站做邮箱吗做网站用什么语言开发
  • 网站重做中国十大装修公司
  • 哪个网站名片做的号广告网站留电话不用验证码
  • 福州长乐网站建设wordpress七牛云设置
  • 镇江做网站哪家公司好本溪食品 中企动力提供网站建设
  • 水滴保险官方网站垫江网站建设
  • 西安网站手机网站建设手机剪辑app哪个最好
  • 什么专业的会做网站做一个专业的网站多少钱
  • 静态学校网站做毕业设计咖啡厅网站建设
  • wordpress 视频 插件seo营销名词解释
  • 小语种网站建设及推广建设一个用教育网站
  • 阜阳网站建设哪家好织梦网站安装视频教程
  • 机关网站建设的作用江苏水利厅建设网站
  • 郑州商城网站设计wordpress小清新模板
  • 鲜花网站建设论文wordpress人才市场
  • 一个网站交互怎么做的网站套餐可以分摊吗吗
  • 企业门户网站云服务器配置要求如何做网站需求
  • 温州做模具的网站正规网站建设公司一般要多少钱
  • 登封做网站优化做个英文网站
  • 南通丰汇建设有限公司公司网站网站后台账户如何做会计分录
  • wordpress改成自己网站店铺装修设计网站
  • 维护网站是什么意思滕州公司做网站
  • 网站可以自己维护吗北京和田合瑞建设有限公司网站
  • 珠海响应式网站建设公司wordpress广告模板下载地址
  • 厦门网站建设招标网站托管运营
  • 网站后台更新没有变化深圳平台型网站建设公司
  • 网站开发更新记录大型网站开发 框架
  • 房产网站开发seo查询站长工具