C++成员函数指针
发布网友
发布时间:2022-06-05 20:00
我来回答
共2个回答
热心网友
时间:2022-07-11 00:50
error C2297: “->*”: 非法,右操作数包含“CtextdlgView::pDraw”类型
很明显你应该定义
class CtextdlgView;
typedef int (CtextdlgView::*pDraw)(CPoint,CPoint);
因为上面说明它不认识CtextdlgView::pDraw类型。
应该要换一个名字,不知道会不会和原来的函数冲突追问typedef int (CtextdlgView::*pDraw)(CPoint,CPoint);
Draw(&CtextdlgView::DrawEllipse,ptOri,point);
1>d:\vs2008study\textdlg\textdlg\textdlgview.cpp(114) : error C2664: “CtextdlgView::Draw”: 不能将参数 1 从“int (__thiscall CtextdlgView::* )(CPoint,CPoint)”转换为“CtextdlgView::pDraw *”
追答看这个ca.Result(CA::Min, a, b)明显没&
Draw(&CtextdlgView::DrawEllipse,ptOri,point);
}
不用&
Draw(CtextdlgView::DrawEllipse,ptOri,point);
}
原来的不用改,不要用this->
如果不行,吧原代码发给我,我试试
热心网友
时间:2022-07-11 00:50
成员函数的指针不是这样子用的哦。它必须配合this指针才可以。
如果你只是想OnLButtonUp根据条件分发,倒不如另外加一个参数,搞成员函数指针是非常不好的Design。