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

中煤建设集团网站怎样做网站教程

中煤建设集团网站,怎样做网站教程,新闻客户端网站开发,建设库官网查询系统文章目录 【 1. 抽象类 】1.1 抽象类的定义1.2 抽象类的应用条件1.3 实例 【 2. 设计策略 】 接口描述了类的行为和功能,而不需要完成类的特定实现。C 接口是使用 抽象类(abstract base class,也称为ABC) 来实现的。 【 1. 抽象类…

文章目录

  • 【 1. 抽象类 】
    • 1.1 抽象类的定义
    • 1.2 抽象类的应用条件
    • 1.3 实例
  • 【 2. 设计策略 】

  • 接口描述了类的行为和功能,而不需要完成类的特定实现。
  • C++ 接口是使用 抽象类(abstract base class,也称为ABC) 来实现的。

【 1. 抽象类 】

1.1 抽象类的定义

  • 如果 类中至少有一个函数被声明为纯虚函数,则这个类就是 抽象类。纯虚函数是通过在声明中使用 “= 0” 来指定的,如下所示:
class Box
{public:// 纯虚函数virtual double getVolume() = 0;private:double length;      // 长度double breadth;     // 宽度double height;      // 高度
};

1.2 抽象类的应用条件

  • 设计抽象类的目的:是为了给其他类提供一个可以继承的适当的基类。
  • 抽象类不能被用于实例化对象,它只能作为接口使用,如果试图实例化一个抽象类的对象,会导致编译错误。(相对应的,可用于实例化对象的类被称为 具体类)。
  • 如果一个 ABC抽象类 的子类需要被实例化,则必须实现每个纯虚函数,这也意味着 C++ 支持使用 ABC 声明接口。 如果没有在派生类中重写纯虚函数,就尝试实例化该类的对象,会导致编译错误。

1.3 实例

  • 抽象类的实例:基类 Shape 提供了一个接口 getArea(),在两个派生类 Rectangle 和 Triangle 中分别实现了 getArea(),我们可以看到:一个抽象类是如何定义一个接口 getArea(),两个派生类是如何通过不同的计算面积的算法来实现这个相同的函数。
#include <iostream>using namespace std;// 基类
class Shape 
{
public:// 提供接口框架的纯虚函数virtual int getArea() = 0;void setWidth(int w){width = w;}void setHeight(int h){height = h;}
protected:int width;int height;
};// 派生类
class Rectangle: public Shape
{
public:int getArea(){ return (width * height); }
};
class Triangle: public Shape
{
public:int getArea(){ return (width * height)/2; }
};int main(void)
{Rectangle Rect;Triangle  Tri;Rect.setWidth(5);Rect.setHeight(7);// 输出对象的面积cout << "Total Rectangle area: " << Rect.getArea() << endl;Tri.setWidth(5);Tri.setHeight(7);// 输出对象的面积cout << "Total Triangle area: " << Tri.getArea() << endl; return 0;
}

在这里插入图片描述

【 2. 设计策略 】

  • 面向对象的系统可能会使用一个抽象基类为所有的外部应用程序提供一个适当的、通用的、标准化的接口;然后,派生类通过继承抽象基类,就把所有类似的操作都继承下来。
  • 外部应用程序提供的功能(即公有函数)在抽象基类中是以纯虚函数的形式存在的。这些纯虚函数在相应的派生类中被实现。
  • 这个架构也使得新的应用程序可以很容易地被添加到系统中,即使是在系统被定义之后依然可以如此。
http://www.yayakq.cn/news/11247/

相关文章:

  • 永德网站建设360信息流广告在哪里展示
  • 怎么做一张图片的网站广府网站建设
  • 做网站选哪个语言合肥网站建设网站推广
  • 黑别人网站泉州网站建设价钱
  • 网站建设的公司哪家是上市公司客源网站
  • 高端商品网站展架立式落地式
  • 中牟网站制作公司网站维护流程
  • 网站备案提交信息吗有哪些做国际贸易的网站
  • 郑州电商网站建设2021年年度关键词排名
  • 公司建设网站需要什么条件素材网址
  • 欧洲购物网站排名海口网站排名提升
  • 闪灵企业建站系统千万别学服装设计
  • 花钱做网站不给源码2022年国际十大新闻
  • 运城网站建设运城天气网站建设平台分析
  • 服装店网站模板免费网站建设合同范本
  • 推广网站发布文章网站建设硬件配置
  • 小型企业类网站开发公司昌吉市住房和城乡建设局网站
  • 网站开发经验教训asp网站可运行jsp吗
  • 山西建设工程备案网站建立企业官方网站
  • 专业ppt制作价格天津seo公司排名
  • s吗网站虚拟主机成免费的crm无需下载
  • 我的家乡湛江网站设计.net电商网站开发设计
  • 黄石企业做网站流量最大的网站
  • 网站建设需什么软件博罗惠州网站建设
  • 爱站关键词查询网站建设主要用什么软件
  • 国外个人网站网站开发 自动生成缩略图
  • 郑网站建设外贸网站建设设计方案
  • 网站是可以做的吗烟台网站建设电话
  • 摄影网站开发意义清空网站空间
  • 虚拟机网站建设怎样做营销型网站