主题:[原创]请教下大家,我这个MFC双缓冲代码哪里存在内存泄漏?

  共有26162人关注过本帖    
帅哥哟,离线,有人找我吗?
yy
1楼 信息 | 搜索 | 邮箱


加好友 发短信
  发帖心情 Post By:2018-1-16 14:25:00   [显示全部帖子]

你检查下你DeleteObject返回是不是0,如果是0则表示对象删除失败。

你查下MSDN,当CBitmap的对象被DC加载的时候应该是删除不了对象的。

所以当DC做SelectObject的时候,你应该保留返回的old对象,并且在使用完成后,重新调用SelectObject恢复原对象。

例如:

CBitmap* pOldBmp = memDC.SelectObject( &bmp );    //把位图选入内存DC,并保存原对象。

....        //若干操作

memDC.SelectObject( pOldBmp);         //还原

bmp.DeleteObject();


  单帖管理 | 引用 | 回复 回到顶部

返回首页

[原创]请教下大家,我这个MFC双缓冲代码哪里存在内存泄漏?

用户名:
            验证码: 验证码,看不清楚?请点击刷新验证码
内容: