C语言键盘事件回调函数,C语言(回调函数)

C语言(回调函数)

89638afd6dc0ba19a9f3c1b95b821a79.png

那什么是回调呢?

吃了食堂的饭一个礼拜之后,实在太难吃,你已经确定你无法再吃下去了,于是你决定不吃食堂的饭,改为自己做饭吃,当然你不能亲自出马,你还是调用前台小妹帮你干活,这次你也必须给她一些钱,以及你想吃的东西,让她帮你去菜市场买回来做好,端给你吃。虽然前台小妹非常愿意为你效劳,她可以跑腿、买菜、砍价、端茶递水,但可惜她不会做饭,你急中生智,果断地从黑市雇佣了一名资深大厨,啥也不会就会做饭,你只要给他材料就行了。这样,你的午饭的产生过程变成了:你将要吃的菜品清单和需要花的钱传递给前台小妹,不仅如此,你还把大厨的电话号码给到小妹,叮嘱说:买了菜就打这个电话,让他帮你把菜做了,然后你捯饬好了给我送过来。于是小妹屁颠屁颠地就出去买菜了,与此同时,你可以“定制”你的大厨,你叮嘱你的大厨说:大厨,我喜欢吃辣,以后你做的任何菜里,都要放够足量的辣椒。请看:

c01ewkpqmsk.jpg

在上面的“午饭”秀中,实现了典型的回调机制,你定制了一位做任何菜都死命放辣椒的大厨,然后你在调用前台小妹的同时,将大厨的电话号码也给到她,小妹在需要做饭的时候,就会根据你提供的参数(大厨的电话)回过去调用(回调!)那位大厨,做好饭后小妹再细心地捯饬捯饬,端给你吃。

你还应该注意到,在上图中一个最重要的信息:左边的两个人和右边的那个人之间有一条饱含深意的虚线,他意味着左右两边是两拨人,左边的人负责做饭和吃饭,右边的人负责跑腿、砍价等。比如:你只要知道怎么找到前台小妹,传给她参数让她干活就行了,根本不需要知道她究竟到哪儿买的菜跑了多远的路,另外管好大厨,让他死命放辣椒就行了,也根本不需要管小妹什么时候会去找大厨,以及他们之间的任何其他事情。对于右边的小妹而言,她只要根据你的嘱咐勤快跑腿,有必要的时候“回调”一下大厨就行了,也根本不管大厨做的饭究竟啥口味。

瞧,左右两拨人各干各的,互不耦合,独立性强,但又可以非常方便地相互合作,达成一个更丰富的功能。这里,大厨就是一个回调函数——一个不被设计者(你)直接调用,而是被其他人(小妹)回过来调用的函数。你传递给小妹的电话号码,相当于一个能找到大厨的指针,被称之为函数指针,回调机制就是靠传递函数指针来告知回调函数的位置的。

————————————————

版权声明:本文为CSDN博主「怀念北方的南方人」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/vincent040/java/article/details/50832955

C语言(回调函数)相关教程

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值