一个关于图像处理在内存方面的问题
我用下面的代码执行之后,我的内存多用了7-8M不等空间,但我好像都已经释放了呀,为什么会占用内存呢,请高手指点一下!void CDCTestDlg::OnButton1()
{
for (int i = 0 ; i < 10000; i++)
{
HDC hdcBK = CreateCompatibleDC(::GetDC(0));
HBITMAP bitmap = CreateCompatibleBitmap(::GetDC(0), 1000, 1000); SelectObject(hdcBK, bitmap); PatBlt(hdcBK, 0, 0, 100, 100, WHITENESS);
DeleteObject(bitmap); DeleteDC(hdcBK);
}
}
我用下面的代码执行之后,我的内存多用了7-8M不等空间,但我好像都已经释放了呀,为什么会占用内存呢,请高手指点一下!void CDCTestDlg::OnButton1()
{
for (int i = 0 ; i < 10000; i++)
{
HDC hdcBK = CreateCompatibleDC(::GetDC(0));
HBITMAP bitmap = CreateCompatibleBitmap(::GetDC(0), 1000, 1000); SelectObject(hdcBK, bitmap); PatBlt(hdcBK, 0, 0, 100, 100, WHITENESS);
DeleteObject(bitmap); DeleteDC(hdcBK);
}
}
应该还要把原来的hbitmap再用SelectObject(hbitmap)进DC吧
This function returns the previously selected object of the specified type. An application should always replace a new object with the original, default object after it has finished drawing with the new object.