首次使用Visual Studio 2017 Enterprose,无法创建简单的键盘处理程序。
我收到此编译错误:
错误:C2593'运算符+ ='不明确
在以下代码部分中:
void CAppView::OnChar(UINT nChar, UINT nRepCnt, UINT nFlags)
{
// TODO: Add your message handler code here and/or call default
CView::OnChar(nChar, nRepCnt, nFlags);
CAppDoc *pDoc = GetDocument();
ASSERT_VALID(pDoc);
pDoc->d+=nChar;
//Invalidate();
}
我使用了相同的代码,它在VS 6.0企业版的MFC C ++应用程序中有效。
答案 0 :(得分:1)
不确定d
变量是什么,但是......尝试将其转换为字符:
pDoc->d += (TCHAR)nChar;
答案 1 :(得分:1)
我清楚地记得,这曾经是很久以前用旧编译器编译的:
CString foo;
foo += 65;
但是在我的Visual Studio 2017中,我得到了与您相同的错误。
但这有效:
foo += (TCHAR)65;
它实际上将'A'
字符附加到foo
字符串。
所以我想你遇到了这个确切的问题。