回调函数的用法请举例
答案:2 悬赏:20 手机版
解决时间 2021-04-01 09:53
- 提问者网友:雾里闻花香
- 2021-04-01 01:49
这个是我编的,请看这段例子,是函数指针还是回调函数,当然可以不用这样编,只是我改的,试用函数指针,如果还有更好的例子可以说明回调函数用法,关于回调函数特别是关于API回调函数还是一知半解,请指教!
#include
using namespace std;
long mul(int n)
{
long s=1;
for(int i=1;i<=n;i++)
s*=i;
return s;
}
long sum(long (*p)(int i),int n)
{
long sum=0;
for(int i=1;i<=n;i++)
sum+=p(i);
return sum;
}
int main()
{
long s;
int n;
cin>>n;
s=sum(mul,n);
cout< return 0;
}
最佳答案
- 五星知识达人网友:人间朝暮
- 2019-06-15 12:17
我理解的回调函数就是将一个回调函数(固定的输入参数个数与类型)的指针交给操作系统,
当满足回调函数的调用条件时操作系统会自动调用回调函数,并将参数传入回调函数
我们一般的程序按自已的流程走,一般用不到回调,但要响应事件时就要用到回调函数
因为不能像在DOS中那轮询事件是否发生,只能靠操作系统在发出事件时调用事件的处理函数
全部回答
- 1楼网友:低血压的长颈鹿
- 2020-09-24 06:08
1.普通的函数是:咱么的函数调用系统的函数,
比如:void fun(){printf();}
而回调函数是:系统调用你的函数。
win32 编程的wndproc,java的事件,c#的delegate都是这种思想。可以说没有坏处,回调使得系统更加灵活。
2.不好写。操作系统或者framework代码不好模拟代码。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯