基础2
简单回调
1.首先介绍最简单的回调函数调用方法:
#include <stdio.h>
//返回值(*指针名)(参数列表)
typedef int(*callback)(int, int);
//回调函数
int SUB(callback pfunc, int a, int b){
return pfunc(a, b);//此处回调add函数...
}
//普通函数
int sub(int a, int b){
return a - b;
}
int main()
{
printf("%d\n", sub(5, 2));
printf("%d\n", SUB(sub, 5, 2));
return 0;
}
2. 通过调用动态库的回调函数
这边给个简单的测试例子,先封装一个含有回调函数的dll。cpp文件内容如下:
//声明
typedef int(*pfunc)(int, int);
static pfunc myadd; //连接状态的回调函数
//设置回调函数
void CALLBACK set_add(pfunc add)
{
myadd = add;
}
int CALLBACK add(int x, int y)
{
return myadd(x, y);
}
int CALLBACK sub(pfunc sub, int x, int y)
{
return sub(x, y);
}
本文来自博客园,作者:封兴旺,转载请注明原文链接:https://www.cnblogs.com/fxw1/p/17701936.html