“default”标签跳过“ ”的初始化操作问题解决

2025-10-24 02:38:40

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的程序时,好奇把它们删除了,编译时就出现了这个错误,开头还不知道的,后来查资料才发现。

  所以这里提醒大家一下而已。

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢