c++函数指针和回调函数示例
2018-10-12 14:09
781 查看
1.函数指针
函数指针是一个指针,只是这个指针它不像普通的指针指向是是一个变量,此时它指向的是一个函数,也就是它存储的是一个函数的地址,如果我们改变它的值,让它所指向的地址由指向funA转变为指向funB,那么这个函数指针的作用就改变了。
2.回调函数
什么是回调函数呢?回调函数其实就是一个通过函数指针调用的函数!假如你把A函数的指针当作参数传给B函数,然后在B函数中通过A函数传进来的这个指针调用A函数,这就是回调机制。B函数就是回调函数。
3.函数指针的使用
3.1函数指针声明
typedef 返回类型(*函数指针类型名)(函参列表);
#include <iostream>
using namespace std;typedef void(*Fun)(int,int); //定义函数指针类型
void min(int a,int b);
void max(int a,int b);void min(int a,int b)
{ int minvalue=a<b?a:b;
std::cout<<"min value is "<<minvalue<<"\n";
}void max(int a,int b)
{ int maxvalue=a>b?a:b;
std::cout<<"Max value is "<<maxvalue<<"\n";
}int main()
{ Fun pFun=NULL; //定义函数指针变量pFun//pFun=min; //两种赋值方式都支持
pFun=&min;
pFun(1,2); //这里获得最小值//pFun=max;
pFun=&max;
pFun(1,2); //这里获得最大值return 0;
}
您可能感兴趣的文章:
相关文章推荐
- 回调函数示例(一)
- 回调方法介绍之中国好室友篇(Java示例)(什么是回调函数?)
- javascript的回调函数应用示例
- VC之回调函数示例
- c++函数指针以及回调函数
- 回调函数示例
- Android(java)回调函数经典示例
- java之回调函数-机制示例1
- [ 回调函数 ] 一个简明的回调函数的示例
- C++简单的回调函数示例
- java之回调函数-机制示例2
- linux使用定时器回调函数示例
- c++函数指针使用示例分享
- C语言,仿内核方式实现分级打印 [附:函数指针、回调函数的小示例]
- 《GOF设计模式》—命令(COMMAND)—Delphi源码示例:参数化机制(回调函数)
- jquery序列化表单以及回调函数的使用示例
- 【callback】js回调函数示例
- jquery序列化表单以及回调函数的使用示例
- 回调函数的使用示例
- 回调函数参数问题,闭包解决方案示例