函数指针
1: 函数调用: 准备好参数后,把指令指针拨动到函数开始的位置;
2: 函数的开始的指令对应一个代码段上的内存地址,这个内存地址在C/C++里面是函数的名字
3: 除了普通数据类型的指针,还可以定义函数指针;
void (*ptr)(int value); 返回值为void,参数为int的类型的函数的指针,可以存放函数所在的地址;
ptr = 函数的名字;
4: 使用变量可以访问得到这个地址,从而可以使用函数指针来调用函数;
5: typedef 定义一个函数指针的类型, 定义一种类型,专门用来存放这种类型的函数地址;
- 当函数调用的时候,要把指令指针拨动到函数开始的地方;
- 每个函数都对应开始的内存地址;
- c语言函数的名称就是这个函数代码指令的起始地址;
- 函数编译–>指令在代码段上的起始地址;
- 调用函数就是让我们的指令指针,跳转到起始地址;
- 函数的名字->就是地址;可以用指针变量来存放它;
- 怎么样定义一个函数指针呢?变量用来存放这种类型的函数地址
- 每一次这样定义函数指针,有点不方便;
- 使用
typedef创造了一种类型FUNC_PRT是一个void (int)函数指针类型

本文详细介绍了C++中的函数指针、虚函数和虚函数表的概念及其使用。函数指针可以指向函数的地址,方便调用。虚函数在多态中扮演关键角色,每个类都有一个全局唯一的虚函数表,通过虚函数表指针调用虚函数。纯虚函数作为抽象接口,强制子类实现。总结了虚函数表的继承、基类指针调用子类实例的普通和虚函数,以及纯虚函数的作用。
最低0.47元/天 解锁文章
2256

被折叠的 条评论
为什么被折叠?



