回调函数并不是mfc专有的,在非mfc中也有,有时候设置回调函数其实是希望某个程序执行过程中希望某个函数被调用,而这个被调用的函数习惯上叫回调函数,只是一种称呼而已,每一个窗口程序在注册窗口类的时候都要填写一个窗口过程函数指针,其实这个窗口过程函数也可以叫做回调函数,只不过习惯叫窗口过程。举个例子,在编写复制文件的程序时候,调用复制文件的函数时候,也可以设置一个回调函数,那么在系统进行文件复制的过程中会不断调用这个回调函数,回调函数的参数中就有一个指明复制了几个字节数据,因此我们就可以在回调函数里面统计已经复制了多少个字节,根据统计可以绘制文件复制进度等,如果没有设置回调函数的话,复制的过程中就没有机会知道当前复制的进度,因为复制文件只需要调用一个API,复制文件其实由驱动程序来完成,API仅仅是给驱动发一个命令而已。