c/c++回调函数,定义,用法,函数指针赋值的方法,全局函数和成员函数赋值为函数指针

回调函数是指通过函数指针在特定条件下被其他函数调用的函数。在C/C++中,可以定义函数,创建函数指针并将其指向该函数,然后在合适的时候通过指针调用函数实现回调。回调常用于处理程序员无法直接调用的函数。本文介绍了如何定义函数指针,如何将全局函数和静态成员函数赋值给函数指针,并提供了使用typedef定义回调函数的关键字示例。
摘要由CSDN通过智能技术生成

回调函数:通过函数指针由某个函数在特定场合下调用指针指向的函数,这个过程叫回调函数

将函数的指针(地址)作为参数传递给另一个函数,当这个指针用来调用其所指向的函数时,便是回调函数。

回调函数不由函数者(程序员)实现直接调用,而是在特定环境下由其他函数调用,用于对该事件或条件进行响应。

场景:程序员不好手工调用某函数时,交给其他函数控制时机调用该函数。

c/c++中回调函数的用法:
1.定义一个函数
void func()
{
cout<<"…"<<endl;
}
2.定义一个函数指针
格式:返回值 (*指针名)(参数类型,参数类型);
void (*p)(); //这里这个函数名叫p,指针可以用来被指向一个无返回值,无参数的函数
3.函数指针指向对应格式的函数 //可在其他函数中调用
p = func;
4.通过函数指针调用其指向的函数
p();//函数指针调用函数的这一步叫做回调函数

要定义一个函数指针数组的话,
格式为
void (*func[5])(); //每个成员都是一个函数指针
初始化可以是
void(*func[5])() = { dofunc1, dofunc2, dofunc3 };

函数指针作为函数参数:

void work(void (*p)())
{
   
///
p();
///
}
void work
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值