带有列表的结构<..> 2 暗淡。动态数组删除时出现段错误
对于一个小项目,我想使用一个带有 stl 容器的结构。 然后这个东西被打包成一个动态的 2 点。数组,但是当我尝试删除它时, 它出现段错误。
这是代码:
struct cell{
list<pair<double, double> > alist;
};
int main()
{
struct cell ** myAr = new cell*[5];
for(int i = 0; i < 5; ++i)
myAr[i] = new cell[5];
for(int j = 0; j < 5; ++j)
delete myAr[j];
delete myAr;
return 0;
}
任何人都可以帮我解决这个问题吗? 提前致谢。 弗洛。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
使用
delete[]
来分配通过new[]
分配的内存:Use
delete[]
for memory allocated withnew[]
:您使用 new[] 进行分配,因此需要使用 delete[] 进行释放:
You allocated with new[] so you need to free with delete[]:
我认为
delete [] myAr;
应该可以正常工作i think
delete [] myAr;
should work fine