VC 6.0 转 VS 2010 问题:error C2440: 'static
error C2440: “static_cast”: 无法从“void (__thiscall CChatDlg::* )(WPARAM,LPARAM)”转换为“LRESULT (__thiscall CWnd::* )(WPARAM,LPARAM)”
1> 从基类型到派生类型的强制转换需要 dynamic_cast 或 static_cast
搜索发现为开发平台迁移问题。
由vc6.0升级至vs2005以上平台均会遇到这情况,原因为
VS2005、VS 2010对消息的检查更为严格,以前在VC6下完全正常运行的消息映射在VS2005下编译不通过
// 生成的消息映射函数
virtual BOOL OnInitDialog();
afx_msg void OnSysCommand(UINT nID, LPARAM lParam);
afx_msg void OnPaint();
afx_msg HCURSOR OnQueryDragIcon();
afx_msg void OnRecvData(WPARAM wParam, LPARAM lParam);
DECLARE_MESSAGE_MAP()
BEGIN_MESSAGE_MAP(CChatDlg, CDialog)
ON_WM_SYSCOMMAND()
ON_WM_PAINT()
ON_WM_QUERYDRAGICON()
//}}AFX_MSG_MAP
ON_EN_CHANGE(IDC_EDIT_RECV, &CChatDlg::OnEnChangeEditRecv)
ON_BN_CLICKED(IDC_BTN_SEND, &CChatDlg::OnBnClickedBtnSend)
ON_MESSAGE(WM_RECVDATA, &CChatDlg::OnRecvData)
END_MESSAGE_MAP()
编译错误提示:
error C2440: “static_cast”: 无法从“void (__thiscall CChatDlg::* )(WPARAM,LPARAM)”转换为“LRESULT (__thiscall CWnd::* )(WPARAM,LPARAM)”
1> 从基类型到派生类型的强制转换需要 dynamic_cast 或 static_cast
更改定义:
afx_msg void OnRecvData(WPARAM wParam, LPARAM lParam);
为
afx_msg LRESULT OnRecvData(WPARAM wParam, LPARAM lParam);
编译通过
LRESULT是一个数据类型,
MSDN: 32-bit value returned from a window procedure or callback function
指的是从窗口程序或者回调函数返回的32位值。
更多阅读
僵尸岛6.0完整版攻略 僵尸岛6.0
僵尸岛6.0完整版攻略——简介僵尸岛是一款魔兽争霸生存地图,能够支持魔兽1.20-1.24E版本,支持人数:1-9人,喜欢的朋友下载吧!僵尸岛6.0完整版攻略——工具/原料1.20-1.24E版魔兽僵
火影忍者羁绊6.0隐藏英雄密码 火影忍者羁绊6.0谁厉害
火影忍者羁绊6.0隐藏英雄密码——简介隐藏英雄密码:六道佩恩: 冬冬游戏六道带土: dongdong新英雄六道斑: huoyingPS:如果密码错误说明不是正版,盗版密码为:
教你如何刷MIUI 6.0系统,一键刷机通用图文教程 miui一键刷机v5
教你如何刷MIUI 6.0系统,一键刷机通用图文教程——简介如今小米手机越来越受国人欢迎了,其体验符合国人要求,给大家打来不一样的体验,随着时间的推移,miui 6.0如约而至,作为一刷机爱好者,这边给大家带来一个非小米手机刷MIUI 6.0的刷机教程
QQ问题:6 QQ无法安装
QQ问题:[6]QQ无法安装——简介其实说起QQ,现在我们大家都用,甚至我相信80%的人打开电脑(非工作状态下)第一件事儿就是上QQ,重装个系统后,第一件事儿也是下载安装QQ。不过相信大家一般也遇到过QQ登录不上去、QQ安装不了,那肯定是相当的着急
新建构主义的理论体系和创新实践6.0版 皮亚杰的建构主义理论
【竹立按:新建构主义理论自提出之日起,至今已经一年有余,笔者已陆续撰写并发表了三篇论文,理论框架已经初步建成,本文系对该理论的阶段性总结,2012年3月8日公布1.0版,3月9日公布2.0版,3月20日公布3.0版,5月30日公布4.0版,6月9日公布5.0版,6