注册 登录
编程论坛 C++教室

指向函数的指针!!!

sadan 发布于 2008-08-14 20:19, 561 次点击
指向函数的指针!!!
为什么要设计指向函数的指针???谁能举几个用他好例子,体现用途???谢谢先
2 回复
#2
xlh52252008-08-14 22:11
再一次遇到你哦!
函数指针用处多的很,自己慢慢学吧
#3
hhitjsj0212008-08-15 12:06
程序代码:
#include<iostream>
using namespace std;

//参数为函数指针的函数
int get_result(int a, int b, int (*sub)(int,int))
{
    int r;
    r=sub(a,b);
    return r;
}

 
//计算最大值
int max(int a, int b)
{
    cout<<"In max"<<endl;
    return((a > b) ? a: b);
}

//计算最小值
int min(int a, int b)
{
    cout<<"In min"<<endl;
    return((a < b) ? a: b);
}

//求和
int sum(int a, int b)
{
    cout<<"In sum"<<endl;
    return(a+b);
}

//测试指向函数的指针
int main()
{
    int a,b,result;

    //测试3次
    for (int i=1;i<=3;i++) {
        cout<<"Input a and b :";
        cin>>a>>b;

        cout<<i<<"\tget_result("<<a<<","<<b<<", &max):"<<endl;
        result =get_result(a, b, &max);
        cout<<"Max of "<<a<<" and "<<b<<" is "<<result<<endl;
   
        result = get_result(a, b, &min);
        cout<<"Min of "<<a<<" and "<<b<<" is "<<result<<endl;

        result = get_result(a, b, &sum);
        cout<<"Sum of "<<a<<" and "<<b<<" is "<<result<<endl;
    }
}
1