指针一般是指向一个数据,指针函数指向的是一个函数。
float fun1(float x, float y);
float fun2(float x, float y);
float (*fun)(float x, float y); //这是在定义一个传入两个参数且都为float类型的函数指针,返回值也为float
//两种赋值方法
fun = fun1;
fun = &fun2;
//调用函数指针的两种写法
float len1 = fun(-3.0f, 4.0f);
float len2 = (*fun)(-3.0f, 4.0f);
float (&fun3)(float x, float y) = fun1; //函数引用的定义与赋值
函数指针如何应用?
//有时候会比较两个对象的大小,需要对应的一些比较规则
void sort(******, int (*comp)(*, *));
//这里就是把一个比较规则的函数传进去,在sort里面调用规则函数来比较