您的位置:首页 > 编程语言 > C语言/C++

错误 3 error C2181: 没有匹配 if 的非法 else c:\users\zhong\desktop\我的程序\c++qt程序\test\sineware\sineware\sinewa

2017-08-17 11:08 1141 查看
vs2012上遇到的错误

错误 3
error C2181: 没有匹配 if 的非法 else c:\users\zhong\desktop\我的程序\c++qt程序\test\sineware\sineware\sineware.cpp304
1 SineWare

case WM_SYSCOMMAND:
{
int nID = wParam;
if(nID == IDM_HELP)
{
MessageBox(hWnd, _T("一个时钟的例子"), _T("时钟"), 0);
}
else if(nID == IDM_TOPMOST);
{
HMENU hMenu = GetSystemMenu(hWnd, FALSE);
if(s_bTopMost)
{
CheckMenuItem(hMenu, IDM_TOPMOST, MF_UNCHECKED);
SetWindowPos(hWnd, HWND_NOTOPMOST, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOREDRAW | SWP_NOSIZE);
s_bTopMost = FALSE;
}
else
{
CheckMenuItem(hMenu, IDM_TOPMOST, MF_CHECKED);
SetWindowPos(hWnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOREDRAW | SWP_NOSIZE);
s_bTopMost = TRUE;
}
}
else
return ::DefWindowProc(hWnd, WM_SYSCOMMAND, nID, 0);
}
return 0;


原因:
else if(nID == IDM_TOPMOST);
后面多了一个分号, 导致else if 和 else中间隔了一个代码块
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐