1、例如这段Windows程碌食撞搁序的过程处理函数:LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam){ switch (message) { case WM_PAINT:{PAINTSTRUCT ps;HDC hdc = BeginPaint(hWnd, &ps);// TODO: 在此处添加使用 hdc 的任何绘图代码...EndPaint(hWnd, &ps);} break; case WM_DESTROY: PostQuitMessage(0); break; default: return DefWindowProc(hWnd, message, wParam, lParam); } return 0;}其中黑色字体部分有一个设备环境DC的对象定义,恰好位于switch中,所以第一个case部分就加上了一对大括号。 这段代码是创建win32程序时,VS2017自动为我们生成的,一般我们也不会去注意这些默认代码(因为是软件写好的,必定正确的)。 只是有一次在写关于DirectX11的程序时,好奇把它们删除了,编译时就出现了这个错误,开头还不知道的,后来查资料才发现。 所以这里提醒大家一下而已。