您当前的位置: 首页 >  c++

真的没事鸭

暂无认证

  • 5浏览

    0关注

    75博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

C++虚函数具体实现机制以及纯虚函数和抽象类(对多态的补充)

真的没事鸭 发布时间:2022-09-25 10:32:47 ,浏览量:5

前面我们说了虚函数实现了运行时的多态,但是没有详细说明虚函数的具体实现机制,所以这里详细说明一下虚函数,并对多态进行一下补充

上一篇链接:C++多态详解_真的没事鸭的博客-CSDN博客

目录

1,虚函数定义时的注意事项:

2,虚函数的作用:

3,虚函数的声明形式

4,虚函数有两种:一般虚函数和虚析构函数

1,一般虚函数

什么是联编

那什么是静态联编和动态联编呢?

总结:

2,虚析构函数

使用虚析构函数的目的

虚析构函数的声明形式:

结论:

5,虚函数的实现机制

1,派生类不重写基类虚函数

2,派生类重写基类函数

3,多重继承

虚函数调用过程

6,纯虚函数

纯虚函数的用法

纯虚函数的声明形式

注意:

7,抽象类

抽象类的用途

抽象类的定义形式

使用纯虚函数和抽象类的注意事项

总结:

抽象类的应用

8,内部类

定义形式

章末总结

1,虚函数定义时的注意事项:

1,类中的静态成员函数不可声明为虚函数

2,派生类对基类函数重新定义时,必须与基类中虚函数的原型完全一致

2,虚函数的作用:

虚函数是运行时多态,若某个基类函数声明为虚函数,则其公有派生类将定义与其基类虚函数原型相同(函数名、返回值类型、参数个数、参数类型及参数顺序均相同)的函数,这时,当使用基类指针或基类引用操作派生类对象时,系统会自动用派生类中的同名函数代替(覆盖)基类虚函数。

下面看一个例子:

#include 
using namespace std;
class A
{
public:
	void display()
	{
		cout             
关注
打赏
1663134582
查看更多评论
0.0511s