news 2026/5/1 6:11:41

C++之纯虚函数和抽象类

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
C++之纯虚函数和抽象类

文章目录

  • 纯虚函数
  • 抽象类

纯虚函数

  • 如果一个虚函数仅表达抽象的行为,没有具体的功能,即只有声明没有定义,这样的虚函数被称为纯虚函数或抽象方法
class类名{public:virtual返回类型 函数名(形参表)=0;};
  • 假设有图形类Figure, 设计计算面积的成员函数area()
  • Figure只是一个纯抽象意义上得概念,不存在计算面积或体积的具体方法,所以只能将成员函数area()设计为纯虚函数
#include<iostream>usingnamespacestd;classFigure{protected:doublex,y;public:voidset(doublei,doublej){x=i;y=j;}virtualvoidarea()=0;};

抽象类

  • 如果类中包含了纯虚函数,那么这个类就是抽象类
  • 抽象类只能最为其它类的基类,不能用来建立对象
  • 如果类中的所有成员函数都是纯虚函数则可以称为纯抽象类
#include<iostream>usingnamespacestd;classShape{public:virtualvoiddraw(void)=0;};classRect:publicShape{public:voiddraw(void){cout<<"draw Rect"<<endl;}};classCircle:publicShape{public:voiddraw(void){cout<<"draw Circle"<<endl;}};classEllipse:publicShape{public:voiddraw(void){cout<<"draw Ellipse"<<endl;}};intmain(void){/* Ellipse e; e.draw(); e.Shape::draw(); *///Shape s1; //errorShape*buf[128]={0};buf[0]=newRect;buf[1]=newCircle;buf[2]=newEllipse;for(inti=0;buf[i]!=NULL;i++){buf[i]->draw();}return0;}
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/18 5:31:30

方盾防毒口罩:化工喷漆作业的呼吸安全保障

在化工喷漆作业现场&#xff0c;刺鼻气味常常弥漫于空气中。许多作业人员误以为“习惯就好”&#xff0c;从而忽视了佩戴防毒口罩的重要性。殊不知&#xff0c;这些看似平常的喷漆烟雾中&#xff0c;隐匿着多种对人体有害的物质。长期暴露其中&#xff0c;极有可能引发严重的健…

作者头像 李华
网站建设 2026/4/18 7:00:31

零基础如何学网络安全?超详细攻略,带你从入门到精通

一、学习建议 1.了解基础概念&#xff1a; 开始之前&#xff0c;了解网络安全的基本概念和术语是很重要的。你可以查找网络安全入门教程或在线课程&#xff0c;了解网络安全领域的基本概念&#xff0c;如黑客、漏洞、攻击类型等。 2.网络基础知识&#xff1a; 学习计算机网…

作者头像 李华
网站建设 2026/4/30 10:01:19

【2026实测】快降重降 AI 率:格式零损伤,学术改写高效又规范

摘要笔者以工科《计算机技术应用下的电气自动化控制系统设计分析》论文为测试对象&#xff0c;针对工科论文包含表格、公式、数据图表的特点&#xff0c;使用快降重 Pro 版进行降 AI 率处理&#xff0c;实测其在维普、PaperPass 等工科常用检测平台的效果。结果显示&#xff0c…

作者头像 李华
网站建设 2026/4/29 8:37:09

2026年 IT 转行就业,为何首选网络安全?五大核心优势深度解析

2025年IT转行/就业为什么首先要选网络安全&#xff1f; 记得曾经有人说过这样一个俗语&#xff1a;三百六十行&#xff0c;行行转IT。或许听到这个话的时候会觉得是一句玩笑话&#xff0c;但是浏览到网络上一些关于就业的文章&#xff0c;就能够明白这句话的真正意义所在。随着…

作者头像 李华