在做图的时候,非要用新设备替换旧设备吗? CClientDC dc(this); CPen *pOldPen=dc.SelectObject(&pen); dc.MoveTo(m_ptOrigin); dc.LineTo(point); dc.SelectObject(pOldPen);pOldPen这指针默认就存在吗?还有?为什么OldPen一定要被替换才行呢?一直对此不解 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 不调用dc.SelectObject(pOldPen);的话dc一直使用的是pen 否则pen所占用的GDI资源无法销毁,会造成资源泄漏。 不会造成内存泄漏(Memory Leak),但有可能造成资源泄漏(Resource Leak)。这两句话的作用只是用来恢复原来的画笔和画刷。如果你的程序是要长时间使用,并且这个函数是要反复被使用的,那么,建议你加上去.如果只是一般性的使用,价不加也无所谓.(我就因为没有加,字的颜色把WINDOWS的颜色都改变了..........但是没有内存泄漏) 那么原来的pen是个什么状态?不用新的可行性有多少? pOldPen这指针默认就存在吗?==========================你是想问原来dc中是不是有一个画笔吧?dc中应该有一个默认的画笔.为什么OldPen一定要被替换才行呢?==========================不替换也行,只不过你一直用的就是新的画笔就是了. Visual Assist X 为什么键入冒号没有提示? SDI动态切换视图类型出错,请帮忙看下 一个关于工具栏分隔符的小疑问 150高分求书,有关数字水印方面的 谁能帮我找点 COM中动态分配内存和读文件内容方面的资料啊!! 注册表和文件类型 如何把RichEdit中的内容保存到ini中 如何在memDC中创建OpenGL? Socket服务端为什么只能接受到一次客户端的消息!急啊急! 寻内存中数据的压缩程序 a程序如何探知b程序窗口size的大小 taodm:什么软件可以给一个exe文件更改图标
dc一直使用的是pen
这两句话的作用只是用来恢复原来的画笔和画刷。如果你的程序是要长时间使用,并且这个函数是要反复被使用的,那么,建议你加上去.如果只是一般性的使用,价不加也无所谓.
(我就因为没有加,字的颜色把WINDOWS的颜色都改变了..........但是没有内存泄漏)
不用新的可行性有多少?
==========================
你是想问原来dc中是不是有一个画笔吧?dc中应该有一个默认的画笔.
为什么OldPen一定要被替换才行呢?
==========================
不替换也行,只不过你一直用的就是新的画笔就是了.