C/C++函数指针用法
在C语言中,就是通过使用函数指针来实现C++中的多态的
#include<iostream>
using namespace std;
int max(int,int);
int min(int,int);
int add(int,int);
void process(int,int,int (*fun)(int,int));
void main()
{
int a,b;
cin>>a>>b;
cout<<"max=";
process(a,b,max);
cout<<"min=";
process(a,b,min);
cout<<"add=";
process(a,b,add);
}
int max(int x,int y)
{
return ( x > y ? x : y );
}
int min(int x,int y)
{
return ( x < y ? x : y );
}
int add(int x,int y)
{
return ( x + y );
}
void process(int x,int y,int (*fun)(int,int))
{
int result=fun(x,y);//result=(*fun)(x,y);
cout<<fun<<" "<<*fun<<" ";
cout<<result<<"\n";
}
运行结果:
浙公网安备 33010602011771号