请问如何在一个类中取其成员函数的指针

ocean1 2006-04-19 08:10:32
我在一个c++的类中一个函数funcA()中
声明了一个指针变量LRESULT* pL(int a, POINT *b),
在该类的一个成员函数中要取指向另一个成员函数funcB(int a, POINT *b),的指针,
付给该指针pL: pL =funcB;
可是总是出错误,通不过编译,请问应该怎样做?
...全文
157 13 点赞 打赏 收藏 举报
写回复
13 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
SammyLan 2006-04-20
class CFoo
{
typedef void (CFoo::*PFOO)(int);
PFOO pFoo;
public:
void Foo(int i)
{
pFoo=Func;
(this->*pFoo)(i);
}
void Func(int i){}

};

20分,少一分不要,多一份不要(=_=)
  • 打赏
  • 举报
回复
iceheart 2006-04-20
用静态成员函数
  • 打赏
  • 举报
回复
langzi8818 2006-04-19
友情UP
  • 打赏
  • 举报
回复
healer_kx 2006-04-19
class MyClass
{
typedef void (A::*p)(int,point);
void function(int,point);


...
void other_func()
{
p pfunc = MyClass::function;
}

}

调用的时候需要对象指针的,函数指针本身不够。
  • 打赏
  • 举报
回复
ocean1 2006-04-19
少了一句话:
error 2 是在以下的调用中出现的

LRESULT 类名::*pl(int, POINT*) = &类名::funcB;
DaRegistCustomRubber(sizeof(CST_RB), (PROC)pl);
  • 打赏
  • 举报
回复
ocean1 2006-04-19
我在vc++6.0下编译,还是出错,错误提示如下:
1. error C2276: '&' : 试图取得虚函数的地止
2. error C2440: 无法从'type cast' : 'long (__thiscall CMyclass::*)(int, POINT*)' 向 'int (__stdcall *)(void)' 变换
  • 打赏
  • 举报
回复
Johnny_de 2006-04-19
少了个返回类型

LRESULT 类名::*pl(int, POINT*) = &类名::funcB;
  • 打赏
  • 举报
回复
Johnny_de 2006-04-19
to ouyh12345() ( ) 信誉:100
指针是可以指向成员函数的。

类名::*pl(int, POINT*) = &类名::funcB;
  • 打赏
  • 举报
回复
逸学堂 2006-04-19
class A
{
typedef void (A::*p)(int,point); // 利用typedef重新命名类成员函数指针。
funcA(p);
}
  • 打赏
  • 举报
回复
ouyh12345 2006-04-19
指针不能指向成员函数。
  • 打赏
  • 举报
回复
fdimim 2006-04-19
而且你声明的函数指针是错误的。
要这样:
LRESULT (*pL)(int a, POINT *b)
  • 打赏
  • 举报
回复
paradise099 2006-04-19
你可以用函数指针.void (*pl)(int,POINT);现在就可以赋:pl=funcB;
  • 打赏
  • 举报
回复
Jedimaster 2006-04-19
LRESULT (*pL)(int a, POINT *b);
pL = ClassPTR->funcB;
  • 打赏
  • 举报
回复
相关推荐
发帖
VC/MFC
加入

1.5w+

社区成员

VC/MFC相关问题讨论
申请成为版主
帖子事件
创建了帖子
2006-04-19 08:10
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……