在C/C++中,我们经常会看见回调函数的出现,一般会出现在底层模块向高层模块返回必要的信息。现在我们假设这样一种情况:我们现在需要实时获取用户拖动一个多边形的信息,当用户拖动图形时,我们怎么告诉上层模块,用户正在拖动一个多边形并且告诉他的多边形的信息,这时就需要借用回调。这也就是回调的含义,上层模块向底层模块通信,就是通过底层模块提供的一套接口,而底层模块向上层模块通信时,就需要借助回调。
#include "cstdio"
typedef void (*callfuct)(int); //定义回调函数指针,这句的意思是把一个函数指针定义为callfunt
#//定义回调函数
void PrintfText(int a)
{
printf("Hello World %d!\n",a);
}
//定义实现回调函数的"调用函数"
void CallPrintfText(callfuct call,int a)
{
call(a);
}
//实现函数回调
int main(int argc, char* argv[])
{
CallPrintfText(PrintfText,3);
return 0;
}