“GetThisMessageMap”: 不是“CObject”的成员
时间: 2023-11-08 16:04:25 浏览: 138
这个错误通常出现在 MFC(Microsoft Foundation Classes)应用程序中,它表明您正在尝试在 CObject 类型的对象上调用 GetThisMessageMap 函数。但是, GetThisMessageMap 函数不是 CObject 类的成员函数。它是在派生自 CWnd 的类中实现的,用于支持消息映射机制。
为了解决这个问题,您需要将 GetThisMessageMap 函数调用移到 CWnd 类型的对象上,或者在派生自 CWnd 的类中实现该函数。如果您不使用消息映射机制,也可以将其从代码中删除。
相关问题
严重性 代码 说明 项目 文件 行 禁止显示状态 错误 LNK2005 "protected: static struct AFX_MSGMAP const * __cdecl erd::GetThisMessageMap(void)" (?GetThisMessageMap@erd@@KAPEBUAFX_MSGMAP@@XZ) 已经在 erd.obj 中定义 选号器2 D:\test\选号器2\选号器2Dlg.obj 1
这还是一个链接错误(LNK2005),意味着你的代码中有一个静态函数在多个源文件中被定义了多次。在你的项目中,"protected: static struct AFX_MSGMAP const * __cdecl erd::GetThisMessageMap(void)"这个静态函数被定义了多次。具体来说,这个函数在erd.obj和选号器2Dlg.obj文件中都被定义了。要解决这个错误,你需要检查你的代码,找出重复定义的静态函数,并将它们合并成一个定义。可以将静态函数定义放到源文件中,然后在需要使用的地方声明这个静态函数即可。
阅读全文