指针函数
指针函数本质是一个函数,返回值是某一类型指针
int* fun(int x,int y);
函数指针
函数指针是指向函数的指针,本质是指针变量
//申明与赋值
int (*fun)(int x,int y);
fun = &Function;
或者
int (*fun)(int x,int y);
fun = Function;
//调用
a = (*fun)();
a = fun();
函数指针数组
#include<iostream>
using namespace std;
int add(int a,int b){return a+b;}
int subtract(int a, int b){return a-b;}
int multiply(int a, int b){return a*b;}
int divide(int a, int b){return a/b;}
int main()
{
int a,b;char c;
int (*pf[4])(int,int);
pf[0]=add;
pf[1]=subtract;
pf[2]=multiply;
pf[3]=divide;
cout<<"请输入算式(如12+34):\n";
cin>>a>>c>>b;
switch(c)
{
case '+': cout<<"和为:"<<(*pf[0])(a,b)<<endl;break;
case '-': cout<<"减为:"<<(*pf[1])(a,b)<<endl;break;
case '*': cout<<"积为:"<<(*pf[2])(a,b)<<endl;break;
case '/': cout<<"除为:"<<(*pf[3])(a,b)<<endl;break;
default:cout<<"请重新输入。"<<endl;
}
}