今天在学习工作代码的时候看到了同事写的一个回调类,是用来在运行软件flow中某一个action的时候若判断运行该action必需要进行某些操作时,调用该类来运行该流程。
在学习该段代码时想起了回调函数,故在此总结一下:
回调函数(callback function)就是一个通过函数指针调用的函数。如果你把函数的指针(地址)作为参数传递给另一函数,当这个指针被用来调用其所指向的函数时,我们就称其为回调函数。
回调函数和普通函数的区别就在其调用时机上。普通函数由用户选择在程序代码中某个位置顺序执行,但是回调函数是通过参数传递后将函数地址传递到另一个函数内,在特定的事件或者条件发生时由另外一方调用,用于对该事件或条件响应。
从某种意义上说,回调函数和Qt中的槽函数一样,都是用于对某个消息的响应。
回调函数在实现上与普通函数没有区别。