有4个文件,a.h,a.cpp;b.h,b.cpp
其中,
a.h中内容 void fun1(void);
void fun2(void);
void fun3( void(*ptr)(void) );
a.cpp中内容 void fun1(void) { }
void fun3( void(*ptr)(void) ) { (*ptr)() ;}
b.h中内容 #include"a.h"
void fun4(void);
void fun5(void);
b.cpp中内容 void fun2(void){}
void fun4( void){ fun1(); }
void fun5(void) { fun3(fun2); }
普通函数:fun1,fun3
回调函数:fun2;
回调的个人理解的2个点:1、声明与实现分离为a,b两层。2、b中#include"a.h",但fun2是由a层调用b层,正常是b层调用a层,因此称回调。
void fun2(void);