新手请教,某程序会定时产生字符串,每秒一次,需要长时间运行,字符串是否需要释放?
用什么函数释放?多谢,请指教,我写的东西需要长时间运行,但是运行六个小时就报告内存出错,

解决方案 »

  1.   

    你产生的字符串放到什么地方了? char[] 还是CString
    是new的char[]还是 char pbuff[n];?
    说清楚
    如果是new的 一定要delelte
    如果CString的Getbuffer调用使用的非0参数 要ReleaseBuffer
      

  2.   

    是 char pbuff[n]形式的,需要释放吗?
      

  3.   

    char pbuff[n] 不需要
    那么你的对话框呢 时候new出来的试试你DEBUG最后有内存泄漏的提示
      

  4.   

    代码长吗?不长的话发给我看看,
    char str[256];
    不需要释放
    char *str=new char[256];
    需要释放
    delete []str;
    内存错误多半是越界造成的,而不是内存泄露
      

  5.   

    要看你是否能够在产生一个新的字符串的时候,delete旧的字符串。可以的话,应该不会有什么问题。如果是用new出来的字符数组,就用delete释放。如果不是,当变量生存期结束后,会自动释放的。