有没有试过将函数作为参数(parameter)来传递?(推荐)

类别:VC语言 点击:0 评论:0 推荐:

我们在传递函数的参数时,一般想到的都是一些诸如int,char,还有指针,引用之类

有没有想过将另外一个函数作为一个参数来传给调用函数呢?

也许这个功能比较少用,但真的很有效。

看看下面的例子

bool up(int a,int b) {return b<a;} //两个简单的函数,执行着相反的功能

bool down(int a,int b) {return b>a;}



void sort(int array[],const int size,bool (*comp)(int,int))

//看清楚喽,上面是一个函数的指针

{
。。。//你可以进行任意一个数组排序了

}


然后,就可以这样调用了。 


sort(myintarray,myintarraysize,up);

想想,看有没有其它的用途,比如说代替头痛的递归呢。

本文地址:http://com.8s8s.com/it/it1815.htm