就是为什么加上delete p又运行不起来,应该怎么改?

while (bWorking)
{
bWorking=Finder.FindNextFile();
if (Finder.IsDirectory()&&!Finder.IsDots())
{
BrowseDir(Finder.GetFilePath());
}
else if (!Finder.IsDirectory()&&!Finder.IsDots())
{
CStatic* p = (CStatic*)GetDlgItem(IDC_STATIC_FILE);
Insert(Finder.GetFilePath());
CString PathName;
PathName.Format("当前访问的文件:%s",Finder.GetFilePath());
p->SetWindowText(PathName);
delete p; //这行有问题
}
我的程序是这样的,把delete p去掉,程序能运行,但是到后面会内存不足;加上delete p又运行不起来,应该怎么改?

芜湖不芜
浏览 82回答 2
2回答

叮当猫咪

你new创建的在哪里啊?应该是别的地方会用到p,你不能给他delete掉 内存空间不足可以从程序整体设计上改。

qq_笑_17

p->destroyobject(); //具体咋拼的忘了,你打一下应该能出来delete p;
打开App,查看更多内容
随时随地看视频慕课网APP