我的使用方法如下:
// header 文件
class A
{
public:
static A &function(void);
test(){cout<<"aaa";}
};
//定义静态成员函数对象指针类型
typedef A &(*FuncType)(void);
extern FuncType msg_a;
// cpp 文件
msg_a = A::function;
template
by GodPig - C/C++ - 2009-09-29 10:21:43 阅读(3924) 回复(4)
#include
下面是一个很短的小程序, 有个疑问在里面, 求高手解释! 谢谢.
#include
下面是一个很短的小程序, 有个疑问在里面, 求高手解释! 谢谢.
#include
#include
void setHandler(int index) { g_cntx->curItem = (int)index; } void RegisterHandler(void (*f)(int item)) { handler1=f; handler2=f; handler3=f; } RegisterHandler(setHandler); [ 本帖最后由 dynamic516 于 2007-12-10 16:26 编辑 ]
当我读到一下代码: int func_A1(void*, void*, void*); int func_A2(void*, void*, void*); int func_A3(void*, void*, void*); int func_B1(void*, void*, void*); int func_B2(void*, void*, void*); int func_B3(void*, void*, void*); int (*p_A[])(void*, void*, void*)= { func_A1, func_A2, func_A3 } int (*p_B[])(void*, void*, void*)= { func_B1, func_B2, func_B3 } int(**p[])(void*, void*, void*)= { p...
例如: void debug(int val) { printf("val=%d\n", val); return; } int main() { int second = 5; /*5秒钟之后打印val*/ eloop_register(second, &debug); return 0; } 想问下,怎么才能将val的值传过去呢?
我的系统是fedora 9,系统自带gcc版本:gcc 版本 4.3.0 20080428 (Red Hat 4.3.0-8) (GCC)
C函数代码如下:
[code]
#include
我实现了不带参数的函数指针调用,但是带参数后编译不通过,不知道哪位能解答一下?谢谢先, 源码如下:
#include
整个函数如下: float *fa() { float m=100; return & } float *fb() { float n=200; return & } void pre(float *(*fun)()) { float *p; p=fun(); printf("%6.2f\n",*p); } float *(*fpt[])()={fa,fb}; main() { clrscr(); printf("First--fa():"); pre(fa); /*If change 'fa' into 'fpt[0]'*/ /* in this line,the result no changed.*/ printf("Again---fa(): "); pre(f...