函数指针数组:
#include <stdio.h>
#include <stdlib.h>
float add(float a,float b){return a+b;}
float minu(float a,float b){return a-b;}
int main()
{
//定义一个函数指针数组,大小为2
//里面存放float (*)(float, float)类型的指针
float (*pfunArry[2])(float, float) = {&add, &minu};
double k = pfunArry[0](3.33,2.22);// 调用
printf("%fn", k);
k = pfunArry[1](3.33,2.22);
printf("%fn", k);
return 0;
}
//c++ 可类比
typedef 简化函数指针类型:
#include <stdio.h>
#include <stdlib.h>
float add(float a,float b)
{
printf("%fn",a+b);
return a+b;
}
float minu(float a,float b)
{
printf("%fn",a-b);
return a-b;
}
//用pfunType 来表示float(*)(float, float)
typedef float(*pfunType)(float, float);
int main()
{
pfunType p = &add;//定义函数指针变量
p(3.33, 2.22);
pfunType parry[2] = {&add, &minu};//定义函数指针数组
parry[1](3.33, 2.22);
//函数指针作为参数可以定义为:void fun(pfunType p)
//函数指针作为返回值可以定义为:pfunType fun();
return 0;
}
//c++ 可类比
总结
以上就是本文关于C++中函数指针详解及代码示例的全部内容,希望对大家有所帮助。有什么问题可以随时留言,小编会及时回复大家的。
注:相关教程知识阅读请移步到C++教程频道。










