函数指针 回调函数 指针数组
一 函数指针的用法
1.1 先自定义一个函数指针类型,注意它指向的函数的函数的参数和返回值必须与其一致, typedef int (*PFUN)(int a, int b)
1.2 定义一个函数指针变量并指向某一个函数 PFUN pfunc = functionA;// int functionA (int a, int b)
1.3 带参数调用: int c =pfun(3,4)
二 回调函数用法:将调用方与被调用方解耦,相当于对指针函数又封装了一层
2.1 定义回调函数: int EXE(PFUN pfunc,int X,int Y) {return pfunc(X,Y)}// 或者直接定义回调函数 int EXE(int (*pfunc)(int a, int b),int X,int Y){ return pfunc(X,Y); }
2.2 调用回调函数 int c=EXE(functionA,3,4);
三 指针数组:
3.1 定义指针数组 int (*parry[])()={functionA,functionB,functionC...}
3.2 调用:
for(int i=0;i<n;i++)
{
parry[i]();//参数没法单独传入,只能适应于无参数无返回值的函数
}