关于MFC中GDI类:请问用CGdiObject对象的成员函数DeleteObject删除对象与用delete删除对象的区别
在MFC教程中看到这么一段程序:voidCHelloWinView::OnDraw(CDC*pDC){...CPenpen[4];...for(inti=0;i<4;i+...
在MFC教程中看到这么一段程序:
void CHelloWinView::OnDraw(CDC* pDC){
...
CPen pen[4];
...
for(int i=0;i<4;i++)pen[i].DeleteObject();
以上一句可否用“delete[]pen;”,有什么不一样?
用delete其实就是调用了CPen类的析构函数,而CPen类既然有了析构函数为什么又要专门再加一个DeleteObject成员函数,不解 展开
void CHelloWinView::OnDraw(CDC* pDC){
...
CPen pen[4];
...
for(int i=0;i<4;i++)pen[i].DeleteObject();
以上一句可否用“delete[]pen;”,有什么不一样?
用delete其实就是调用了CPen类的析构函数,而CPen类既然有了析构函数为什么又要专门再加一个DeleteObject成员函数,不解 展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询