当前位置:首页 > 内存 > 正文

怎么解决内存泄漏

  • 内存
  • 2024-06-07 21:27:19
  • 3389

一、如何解决内存泄漏问题一个好的第一个编码练习是在与内存相关的程序段中查找内存泄漏。一旦程序稳定后,检测内存泄漏肯定会增加故障排除的难度和复杂性。
对于使用内存分配的函数,请记住在使用完毕后将其释放。
堆内存:
malloc\realloc-----free
new\new[]----------delete\delete[]
GlobalAlloc------------GlobalFree
特别注意数组对象内存泄漏
MyPointEX*pointArray=newMyPointEX[100];
删除形式为:
delete[]pointArray
ResourceLeak:在使用系统资源之前,应该仔细检查如何使用它们,以避免误用或忘记释放它们。
让我们看一下MSDN上创建字体的示例。
RECTrect;
HBRUSHhBrush;
FONThFont;
hdc=BeginPaint(hWnd,&ps);48,0,0,0,FW_DONTCARE,FALSE,TRUE,FALSE,DEFAULT_CHARSET,OUT_OUTLINE_PRECIS,CLIP_DEFAULT_PRECIS,CLEARTYPE_QUALITY,VARIABLE_PITCH,TEXT("Impact"));
SelectObject(hdc,hFont);
SetRect(&rect,100,100,700,200)
SetTextColor(hdc,RGB(255,0);,0))
DrawText(hdc,TEXT("DrawingTextwithImpact"),-1,&rect,DT_NOCLIP));
EndPaint(hWnd,&ps);