本来我的程序运行的很正常,也包括递归程序
可是今天我修改了一个别人的源程序只把前面的malloc换成new句法
忘了把后面的free换成delete,结果编译运行后就出现了只要涉及递归程序就占用CPU99%的情况,
也有可能是其他原因造成的
请问有什么办法解决,谢谢

解决方案 »

  1.   

    换成delete以后还出现那样的情况吗?
      

  2.   

    我刚才yong软件比对了一下原来能运行得备份和现在的程序
    两者几乎相同,不相同的都是不相关的东西,结果还是有问题
    我试着把两者改为完全一致试试,有点邪门啊
      

  3.   

    本来你的程序很正常
    但是因为你没有正确使用malloc-free
    new-delete这两组不可交叉使用,容易出现内存泄漏。
    你的情况可能就是因为这个,原来程序中内存使用正常,所以没有泄漏,递归也就没有问题
    而新条件下可能出现了内存泄漏,所以递归函数使用的数据也许就出现了错误,这样,容易出现死循环,造成cpu占用99%