用new, delete和不用它们,而直接使用创建对象之间的区别是什么呀?
linsi 2005-11-26 07:07:06 比如在绘图时,用到一个画笔,现在有两种方法可以实现:
1.
CPen* pPen=new CPen(PS_SOLID,1, RGB(255, 0, 0));
CPen *pOldPen = dc.SelectObject(pPen);
....
dc.SelectObject(pOldPen);
delete pPen;
2.
CPen pen;
pen.CreatePen(PS_SOLID,1, RGB(255, 0, 0));
CPen *pOldPen = dc.SelectObject(pen);
....
dc.SelectObject(pOldPen);
这两种方法都能实现选择一个种颜色的画笔,使用完后然后删除它,请问它们有哪种区别,体现在哪几个方面?内存?代码?还是速度?
用哪种方法更好一些呢?