问题描述
- new生成变量不释放是否会造成内存泄露
-
MFC中的对话框初始化函数有以下代码,
其中用new生成的东西,不释放是否会造成内存泄露?
如果会造成内存泄露,改怎样处理?
好多书上经常这么用,也没看到在哪里释放了。HDITEM item; item.cxy=200; item.mask=HDI_WIDTH; m_propertyGrid.GetHeaderCtrl().SetItem(0, new HDITEM(item)); CMFCPropertyGridProperty *pProp1 = new CMFCPropertyGridProperty( _T("普通文字"), _T("显示正确"), _T("这是描述部分"));
解决方案
mfc肯定会的。一般来说,应该在析构函数中释放变量。
解决方案二:
很多图书都是找大学生胡乱写的代码,根本不靠谱。new一定要和delete成对出现。
解决方案三:
c和c++动态生成的地址空间是不会自动释放的。
这可不是java
所以new要和delete配对
不然肯定内存泄露
解决方案四:
c++肯定要自己释放内存的,,不然肯定会泄漏的
时间: 2024-10-21 13:46:50