原来对内存释放一直没有概念,因为写的程序基本上都没有出现内存不够的问题。最近写了一个双三次样条插值的函数,终于体会到为什么要释放内存了。总是提示内存不够,极度无语,每次看到处理过程内存消耗撑撑的向上涨,心里非常不舒服。后面试着把new申请的空间释放了,效果就好多了,内存基本上保持在稳定状态。没想到每次申请的这么一点内存,到后面作用这么大。
在释放内存的时候,遇到一个问题。一个n维数组,但是取值是从(1,n),这时候申请了一个n维的数组,在delete的时候总是提示出错。后面查资料才恍然大悟,这里应该申请(n+1)的空间。始终要记住,程序里面是从0开始,如果是(1,n)就相当于有(n+1)维了。只不过把第一个浪费掉而已。切记切记。。。