c++ 函数指针
c++ 函数指针应用很广泛,用来表示指向某一类函数
首先话不多说,看例子
typedef CCLayer* (*NEWTESTFUNC)();
在这里 typedef 是c++关键字,用来定义一个类型,可以为某个变量定义别名等等,在这里的意思就是定义一个函数指针
CCLayer* 函数的返回值
*NEWTESTFUNC 函数指针的名字
() 函数的参数,可以带参数或不带参数
在这里需要记一下 typedef 定义的是一种数据类型
#include <stdio.h>
int inc(int a)
{
return(++a);
}
int multi(int*a,int*b,int*c)
{
return(*c=*a**b);
}
typedef int(FUNC1)(int);
typedef int(FUNC2)(int*,int*,int*);
void show(FUNC2 fun,int arg1, int*arg2)
{
FUNC1 *p = &inc;
int temp =p(arg1);
fun(&temp,&arg1, arg2);
printf( "%d\n ",*arg2);
}
main()
{
int a;
show(multi,10,&a);
getchar();
return 0;
}
这个例子正常运行的结果为110
上一篇: php实现堆排序
下一篇: java jni调用c++ 代码 报错