Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/140.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
VisualStudio我认为是堆错误 我在一个C++和WiNIP32的项目上。有3个班,每个班大约150人 行代码_C++_Winapi - Fatal编程技术网

VisualStudio我认为是堆错误 我在一个C++和WiNIP32的项目上。有3个班,每个班大约150人 行代码

VisualStudio我认为是堆错误 我在一个C++和WiNIP32的项目上。有3个班,每个班大约150人 行代码,c++,winapi,C++,Winapi,在我的主窗口中,将频繁运行以下代码: wc.cbClsExtra=0; wc.cbWndExtra=0; wc.hbrBackground = CreateSolidBrush(BkColor); wc.hCursor = LoadCursor(NULL,IDC_HAND); wc.hIcon = NULL; wc.hInstance = hInstance; vertex_hInstance = hInstance; wc.lpfnWndProc = VertexProc; wc.lpszCl

在我的主窗口中,将频繁运行以下代码:

wc.cbClsExtra=0;
wc.cbWndExtra=0;
wc.hbrBackground = CreateSolidBrush(BkColor);
wc.hCursor = LoadCursor(NULL,IDC_HAND);
wc.hIcon = NULL;
wc.hInstance = hInstance;
vertex_hInstance = hInstance;
wc.lpfnWndProc = VertexProc;
wc.lpszClassName = Vertex_Class;
wc.lpszMenuName=NULL;
wc.style = CS_HREDRAW|CS_VREDRAW;
RegisterClass(&wc);
hWnd = CreateWindow(Vertex_Class,L"",WS_CHILD|WS_BORDER,getx(),gety(),getw(),geth(),parent_HWND,NULL,hInstance,0);
它在我之前定义的一个类的函数中。运行程序:没有错误,一切正常。关闭程序:显示错误:Windows已触发断点,请查看图片:

您显示的代码不足以说明您描述的问题的原因

但是,不应多次注册同一窗口类

我不知道“频繁”注册同一个窗口类的效果,因为这不是一个人所做的事情(因此我没有这方面的经验),但可以想象,它可能会占用资源,这反过来可能会产生非常有害的影响

通常的解决方案是只在第一次注册窗口类,或者在创建该类的任何窗口之前注册

例如,您可以使用单例来实现这一点


干杯&hth.,

图像是阿拉伯语(或类似的语言)为什么代码经常运行?你只需要注册这个类一次…@Alf-我打开了页面并用谷歌翻译了它-它只会让我上传一些文件,并显示我可以上传的文件的限制。阿尔夫:来自伊朗的一个网站,我认为它更可能是波斯语而不是阿拉伯语。