自定义函数求解
定义类如下
typedef int __fastcall (* hanshu)(int i);
class test1
{
TTimer * tm;
public :
test1();
hanshu hs;
void __fastcall ontm(TObject *Sender);
int __fastcall sss(int i);
};
test1::test1()
{
hs = sss;
}
int __fastcall test1::sss(int i)
{
}
在hs=sss处报错 E2235 Member function must be called or its address taken
求解释。
[解决办法]
hanshu是普通的函数指针。
sss是成员函数。
这两个是不一样的。
在cbuilder总这样写,仅限bcb
typedef int __fastcall (__closure *hanshu)(int i);