vc6.0和vs2005中函数指针的区别
在公用的define.h中如下定义:
typedef BOOL (*AAAA)(int i);
int BBBB(int a, AAAA isa)
{
......
}
在自己的类中 myclass.h :
#include "define.h"
class myclass
{
int HHHH(int a,int b);
int KKKK(int i);
}
int myclass::KKKK(int i)
{
......
}
int myclass::HHHH(int a,int b)
{
int num;
num= BBBB(a, KKKK);
}
请问为什么在vc6.0下没有问题,在vs2005下报错:
error C3867: myclass::KKKK: function call missing argument list; use '&myclass::KKKK' to create a pointer to member
改为
int myclass::HHHH(int a,int b)
{
int num;
num= BBBB(a, &KKKK);
}
后报错:error C2276: '&' : illegal operation on bound member function expression
请给位大侠不吝赐教,谢谢 !!!