| 发表于:2007-05-20 11:12:284楼 得分:0 |
在第一个问题中,是因为我登录失败了,所以要删除这些对象: delete m_parchivein; m_parchivein=null; delete m_parchiveout; m_parchiveout=null; delete m_pfile; m_pfile=null; delete m_pconsock; m_pconsock=null; 我调试了下,以上几句并没有出错,而是当函数最后返回时,就报错了,说unhandle exception in xxx.exe(mfc42d.dll),然后指示这一行(return语句) _afx_inline bool carchive::isbufferempty() const { return m_lpbufcur == m_lpbufmax; } 我不知道mfc什么时候执行上面这些代码,如果是在我删除了carchive对象后再执行这些代码确实会出错,可是为什么会这样呢?难道删除前要做什么准备?我看些参考书也是直接就delete对象,并没有考虑什么呀? | | |
|