LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
case WM_ADD_TERM://添加终端
{
CDssData *pDssData = (CDssData *)wParam;
CTermData *pTermData = (CTermData*)lParam;
CConfData *pConfData = pDssData->FindConf(pTermData->m_nConfNum);
if(pConfData == NULL) {
delete pTermData;
break;
}
pConfData->m_TermDataList.AddTail(pTermData); }
break;

解决方案 »

  1.   

    delete pTermData if(pConfData == NULL) {
    delete pTermData;
    break;
    }
    既然是NULL了
    怎么能去DELETE呢
    delete找到0x0000000这个地址去释放空间
    肯定出错
      

  2.   

    不好意思看错
    你看看你pTermData指的是你要释放的地址吗?
      

  3.   

    好的,我看看先
    问题是 debug 下有时出错,release 下次次出错
      

  4.   

    vipfenghuang (张伟),你好!
    有可能是下面的原因:
      pTermData指针不是new出来的,而是指向别的内存块(比如一个数组,pTermData = szTempData),这样删除pTermData就可能出错,请你查看一下。祝顺利!