Coverity指出了删除void指针的错误。代码如下:
void *pbits=(void *)new char[((bmp.bmWidth*bitspixel+31)/32)*bmp.bmHeight*4];
result=GetDIBits(pDC->GetSafeHdc(),HBITMAP(*pbitmap),0,bmp.bmHeight,pbits,bitmapinfo,DIB_RGB_COLORS);
char curdir[100];
if(!GetCurrentDirectory(100,curdir))
{
delete [] pbits;
return;
}
你能帮我解决一些不正确的问题,我该如何解决?
非常感谢
最好的问候
Chintan
答案 0 :(得分:1)
只需使用char *作为pbits的类型。
答案 1 :(得分:0)
delete
上的void *
实际上是未定义的;这就是该工具报告某些内容的原因。只需将pbits
传递给GetDIBits
,您就可以解决问题。