mumumama1234 2015-08-24 07:48 采纳率: 75%
浏览 3027
已采纳

c++,一个全局变量数组,在程序运行阶段,都要用到,什么时候进行delete[]?

在我的c++代码中,有3个全局变量的数组,假设分别为a[],b[],c[]
它们保存的是三维图像,所以size都不小,size=512*512*512;
我在头文件中声明,在.cpp文件初始化中有语句:
a=new int[size];
b=new int[size];
c=new int[size];
然后我的这个程序就是为了观察这三幅图像,也就是说程序运行后,用户会随时点击按钮显示这三幅图像中任一一幅图,也就是这时三个数组还都会被用到。

之前我并没有delete掉这几个数组,对它们进行计算和修改也仅仅只针对数组的前512*512*512个元素
后来我在调试过程中发现当m>512*512*512时,a[m]居然有值,也就是说这个时候数组的大小已经大于new时候的size。
调查原因应该是因为只有new 而没有delete。可是我这种情况应该在何时delete[] a,b,c呢?

  • 写回答

4条回答 默认 最新

  • 纵横车 2015-08-24 07:54
    关注

    m>512*512*512时a[m]是方问到了b数组吧。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 对于相关问题的求解与代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料
  • ¥15 使用R语言marginaleffects包进行边际效应图绘制