猿问

在匹配目标类型的范围内没有具有该名称的函数?

在匹配目标类型的范围内没有具有该名称的函数


临摹微笑
浏览 741回答 2
2回答

MMTTMM

  首先看看这个宏 ON_MESSAGE(message,OnMyMessage); OnMyMessage返回值必须为LRESULT,其形式为:afx_msg LRESULT OnMyMessage(WPARAM, LPARAM);如果不符合,则有错误提示: error C2440: “static_cast”: 无法从“void (__thiscall CPppView::* )(WPARAM,LPARAM)”转换为“LRESULT (__thiscall CWnd::* )(WPARAM,LPARAM)” 在匹配目标类型的范围内没有具有该名称的函数  这样总算找到问题了,原来那个消息处理函数返回值是VOID,改了改,返回LRESULT,在函数结尾加了个return NULL, OK,这样总算通过了。  参数加上::WPARAM wParam,LPARAM lParam

侃侃无极

你把函数指针定义改成这样就可以了class CSceneManager ;//先声明类typedef bool (CSceneManager::*FnOnEvent)(const IMessage &msg);这才是指向类成员函数的指针。
随时随地看视频慕课网APP
我要回答