下面这道题目,是我在北大青鸟时候出的一道考试题目,你看看,是否正确呢?
这段程序代码如果使用BoundsChecker工具检查,会发现问题吗?为什么?
/***********使用逻辑画笔代码***********************************/
hPen=CreatePen(PS_DASHDOTDOT,1,RGB(255,0,0)); //演示中可以调整颜色和宽度
hOldPen=SelectObject(hdc,hPen);
/***********画矩形区域并填充***************************/
hBrush=CreateSolidBrush(RGB(0,255,0));
hOldBrush=SelectObject(hdc,hBrush);
Rectangle(hdc,100,100,500,300);
SetRect(&rectTest,100,100,500,300);
SelectObject(hdc,hOldPen);
SelectObject(hdc,hOldBrush);
答案:有内存泄漏,因为创建的逻辑画笔和画刷,不再使用应用使用DeleteObject语句删除。防止系统资源的泄漏。