栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

【C++】纯虚函数和抽象类

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

【C++】纯虚函数和抽象类

大家好,我是翼同学!

目录
  • 1️⃣概述
    • 什么是纯虚函数?
    • 什么是抽象类?
    • 纯虚函数的语法
  • 2️⃣小结
  • 3️⃣写在最后


每篇前言

今天笔记的内容是:

  • 纯虚函数和抽象类

1️⃣概述 什么是纯虚函数?

之前我们讲过虚函数,即在基类中被声明为virtual,且在派生类中重新定义的成员函数,其可实现成员函数的动态重载。但需要注意,虚函数里是可以有实现语句的。而什么是纯虚函数?

纯虚函数就是一种特殊的虚函数,也叫抽象函数。在基类中,没有对虚函数给出有意义的实现语句,而是将其定义为纯虚函数,即纯虚函数并没有函数体。而纯虚函数的实现工作就交给派生类去做。这就是纯虚函数的作用。就类似在JAVA中,用关键字abstract去修饰函数。表示其为抽象函数。


什么是抽象类?

有了纯虚函数的类就属于抽象类。

注意:抽象类无法实例化对象。

即声明了纯虚函数的类是一个抽象类。并且无法创建抽象类的实例。如类myClass是抽象类,那么语句:myClass a;是无法实现的。所以我们只能创建它的派生类的实例。但是派生类必须重写基类的纯虚函数,否则子类也是抽象类。


纯虚函数的语法
virtual 返回值类型 函数名(形参列表) = 0;

2️⃣小结
  1. 纯虚函数的用处在于规范派生类的行为。
  2. 带有纯虚函数的类我们称为抽象类。
  3. 抽象类是一种特殊的类,只能作为一个父类来使用。
  4. 抽象类中纯虚函数的定义由子类来实现。
  5. 如果子类中没有重定义纯虚函数,而只是继承父类的纯虚函数,那么这个子类仍然还是一个抽象类。
  6. 如果子类中给出了父类纯虚函数的实现,那么该子类就不再是抽象类了,而是一个可以创建对象的具体类。

3️⃣写在最后

本章内容参考书:

《C++程序设计教程》---- 钱能 著


好了,本篇笔记就到写这,欢迎大家到评论区一起讨论!

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/979636.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号