C++学习笔记28,纯虚函数和抽象基类
来源:互联网 发布:powerdesigner有mac版 编辑:程序博客网 时间:2024/05/29 17:42
纯虚函数是一种特殊的虚函数,在许多情况下,在基类中不能对虚函数给出有意义的实现,而把它声明为纯虚函数,它的实现留给该基类的派生类去做。这就是纯虚函数的作用。
纯虚函数是一种特殊的虚函数,它的一般格式如下:
class <类名>
{
virtual <类型><函数名>(<参数表>)=0;
…
};
在许多情况下,在基类中不能对虚函数给出有意义的实现,而把它声明为纯虚函数,它的实现留给该基类的派生类去做。这就是纯虚函数的作用。
纯虚函数可以让类先具有一个操作名称,而没有操作内容,让派生类在继承时再去具体地给出定义。凡是含有纯虚函数的类叫做抽象类。这种类不能声明对象,只是作为基类为派生类服务。除非在派生类中完全实现基类中所有的的纯虚函数,否则,派生类也变成了抽象类,不能实例化对象。
引入原因:1、为了方便使用多态特性,我们常常需要在基类中定义虚函数。
2、在很多情况下,基类本身生成对象是不合情理的。例如,动物作为一个基类可以派生出老虎、孔雀等子类,但动物本身生成对象明显不合常理。
为了解决上述问题,引入了纯虚函数的概念,将函数定义为纯虚函数(方法:virtual ReturnType Function()= 0;)。若要使派生类为非抽象类,则编译器要求在派生类中,必须对纯虚函数予以重写以实现多态性。同时含有纯虚函数的类称为抽象类,它不能生成对象。这样就很好地解决了上述两个问题。
-----百度百科抽象基类不能实例化该类对象,但是该类的子类可以,只要子类不是抽象基类。
如果派生类没有实现基类的纯虚函数,也将因为继承了抽象方法而成为抽象类。
0 0
- C++学习笔记28,纯虚函数和抽象基类
- C++学习笔记:纯虚函数和抽象类
- 【c++】纯虚函数和抽象类
- [C++]纯虚函数和抽象类
- C++:抽象基类和纯虚函数的理解
- C++:抽象基类和纯虚函数的理解
- C++:抽象基类和纯虚函数的理解
- 抽象基类和纯虚函数
- 纯虚函数和抽象基类
- 纯虚函数和抽象基类
- 抽象基类和纯虚函数
- 抽象基类和纯虚函数
- 抽象基类和纯虚函数
- 纯虚函数和抽象基类
- C++(笔记)纯虚函数(抽象类)
- C++学习笔记--抽象类-纯虚函数
- c++学习笔记(十三):纯虚函数和抽象类
- C++笔记——纯虚函数和抽象类
- 1111
- 1111
- 1111
- 1111
- codeBlocks建立工程
- C++学习笔记28,纯虚函数和抽象基类
- 结构体初始化
- linux 下ar 命令的详细解释
- jquery easyui window引入新页面出现乱码
- CRT工具远程Linux系统服务器的 命令
- 丰胸整型美容医院
- 第三次了
- linux连接器ld
- 如何将天地图转换为默卡托投影坐标