首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

new 与delete 的有关问题

2012-03-03 
new 与delete 的问题TCHAR* filename new TCHAR[100]………………delete []filenamefilename NULL这个有问

new 与delete 的问题
TCHAR* filename = new TCHAR[100];
………………
delete []filename;
filename= NULL;

这个有问题吗? 怎么会出现堆内存被破坏的情况,我的是vs2005,不会是编译器的原因吧 。
本人新手,别笑话啊!

[解决办法]
提供参考,在VC6.0下
void main()
{
char* filename = new char[100];


delete []filename;
filename= NULL; 
}

没有错误!
[解决办法]
应该没有问题吧!
[解决办法]
对的
[解决办法]
没有问题
别的地方的问题吧
[解决办法]
你可以搜索一下你的程序里有几个delete有几个new,
如果你找出来8个delete,7个new那么恭喜你你写错了
如果你找出来new和delete的数量相同
那么你看看带[]的new是不是都用带[]delete了,不带[]的new是不是都用不带[]delete了
要是这样都没错,你应该再看看有没有反复delete的指针,比如你把filename delete了100遍。
[解决办法]
问问MS VS 2005。。

[解决办法]
绝对没错!

热点排行