读书人

怎么将函数保存到数组,要用的时候再用

发布时间: 2012-04-27 11:57:44 作者: rapoo

如何将函数保存到数组,要用的时候再用
我的想法:
把函数的地址保存起来,再调用
汇编的方法就实现了,但是VC++怎么实现呢?

C/C++ code
#include <iostream>using namespace std;void* t;void a();int b;void main(){    t = &a;/*    _asm    {        call t[0]    }*/    *t();//这样不行}void a(){    b++;}


[解决办法]
typedef void( * FUNCPTR)( void );

t=(void*)a;
....

((FUNCPTR)t)();
[解决办法]
探讨
typedef void( * FUNCPTR)( void );

t=(void*)a;
....

((FUNCPTR)t)();

[解决办法]
将二进制读取到内存中,然后使用函数指针方式可以执行,这种方法的标准做法就是dll。

[解决办法]
得用函数指针
[解决办法]
函数指针,类似加载dll中的函数,类似GetProcessAddr
[解决办法]
探讨

函数指针,类似加载dll中的函数,类似GetProcessAddr

读书人网 >VC/MFC

热点推荐