程序运行时,出现“请输入DBHEAP.h的路径”,我的程序中很多地方用到堆内存分配,有很多的new和delete.各位高手能不能告知在下,出现这种错误有几种可能的原因,能提供点解决方案吗?感激不尽!

解决方案 »

  1.   

    那是你程序出错了弹出的调试程序,但没有找到该文件。new和delete一定要成对出现。
      

  2.   

    程序运行了一段时间后才出现这种错误的,比如
    float *a;
    a=new float[300];
    for(int i=0;i<6040;i++)
    {
       .........
    }
    delete [] a;
    程序运行到i=5时,出现这种错误。
    在每一个循环中用到的数组大小不一样,一开始开辟的是最大数组大小。
      

  3.   

    假如第一次循环时,数组占用空间为100,即a[0]到a[99]有值,第二次循环时,为a[50],第三次为a[200],这样会不会出现内存混乱的情况??
      

  4.   

    内存操作出错了
    循环中new了,记得delete