首页 > 代码库 > C++函数指针数组的简单使用

C++函数指针数组的简单使用

声明函数指针的数组类似声明一般的指针数组。接上文例子将其改进为使用函数指针的数组,代码如下:

#include <iostream>using std::cout;using std::endl;//函数声明double squared(double);double cubed(double);double sum_array(double array[],int len,double (*pfun) (double));int main(){	double array[]={1.5,2.5,3.5,4.5,5.5,6.5,7.5,8.5};	int len=sizeof array/sizeof array[0];	//定义并初始化函数指针数组	double (*pfun[2])(double)={squared,cubed};	cout<<"Sum of squares = "<<sum_array(array,len,pfun[0])<<endl;	cout<<"Sum of cubes = "<<sum_array(array,len,pfun[1])<<endl;	return 0;	} //求平方和double squared(double x){	return x*x;}//求立方和double cubed(double x){	return x*x*x;}//对数组元素按照函数指针指定的函数处理后求和double sum_array(double array[],int len,double (*pfun) (double)){	double total=0.0;	for(int i=0;i<len;i++)		total+=pfun(array[i]);	return total;}