VS2015环境下的提示语法错误:编号的预期结尾后有多余文本(extra text after expected end of number)

2023-05-25,,

当工程中有扩展CListCtrl的类代码,并且有自绘单元格的操作,

ON_NOTIFY_REFLECT(NM_CUSTOMDRAW, OnNMCustomdraw)

编辑器语法智能提示就会对这个宏定义报错,似乎只有在vs2015环境(vc++ 2015版本)才有问题。

解决方法是新增一个宏定义,覆盖默认的宏定义,如下:

#if (_MSC_VER==1900)
#define ON_NOTIFY_REFLECT(wNotifyCode, memberFxn) \
{ WM_NOTIFY + WM_REFLECT_BASE, (WORD)(int)wNotifyCode, 0, 0, AfxSigNotify_b, \
(AFX_PMSG) \
(static_cast<void (AFX_MSG_CALL CCmdTarget::*)(NMHDR*, LRESULT*) > \
(memberFxn)) },
#endif

注意,即使你不增加这段代码,编译实际是正常通过的,程序也能用,只不过提示错误很不舒服,一改了之。

VS2015环境下的提示语法错误:编号的预期结尾有多余文本(extra text after expected end of number)的相关教程结束。

《VS2015环境下的提示语法错误:编号的预期结尾后有多余文本(extra text after expected end of number).doc》

下载本文的Word格式文档,以方便收藏与打印。