首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ Builder >

将种的静态成员函数做为回调函数

2012-12-16 
将类的静态成员函数做为回调函数例如:(1.h)中声明如下typedef void (__stdcall *CALLBACK_Func)(char *str

将类的静态成员函数做为回调函数
例如:(1.h)中声明如下

typedef void (__stdcall *CALLBACK_Func)(char *str,UINT cbSize,Bool bIsOver);

class A
{
   .....
   void f(CALLBACK_Func func);

A类的实现在另外一个DLL中。

现在在B类的
(2.h)声明如下
#include "1.h"
.....
class B
{
    ....
    void call();
    static void __stdcall func(char *str,UINT cbSize,Bool bIsOver);
}
在2.cpp中实现成员函数call()
void B::call()
{
    A a;
    a.f(func);
}
请问这样有什么问题吗,DLL已经连接进去了
[最优解释]
C++Builder增加了一个闭包关键字回调调用类函数。
[其他解释]
2.cpp中实现成员函数call()
是这样的
void B::call()
{
A a;
a.f(B::func)
}

热点排行