Chinaunix首页 | 论坛 | 博客
  • 博客访问: 465811
  • 博文数量: 724
  • 博客积分: 40000
  • 博客等级: 大将
  • 技术积分: 5010
  • 用 户 组: 普通用户
  • 注册时间: 2008-10-13 14:47
文章分类

全部博文(724)

文章存档

2011年(1)

2008年(723)

我的朋友

分类:

2008-10-13 17:06:49

pamire:有内存溢出问题
1. ListDlg.h:
CObList m_wndList;

afx_msg void OnEdit();
afx_msg void OnDestroy();   *****
//}}AFX_MSG
DECLARE_MESSAGE_MAP()

2. ListDlg.cpp:
a. 
m_pDB=new CDaoDatabase;
m_wndList.AddTail( m_pDB );
b.
m_pRecordSet=new CDaoRecordset(m_pDB);
m_wndList.AddTail( m_pRecordSet );
c.
m_pImageList = new CImageList();
m_wndList.AddTail( m_pImageList );

void CListDlg::OnDestroy()
{
CDialog::OnDestroy();

// TODO: Add your message handler code here
POSITION pos;
pos = m_wndList.GetHeadPosition();
while( pos )
{
CObject *ob = m_wndList.GetAt(pos);
if ( ob->GetRuntimeClass() == RUNTIME_CLASS(CImageList) )
{
delete (CImageList*)ob;
}
else if ( ob->GetRuntimeClass() == RUNTIME_CLASS(CDaoRecordset) )
{
delete (CDaoRecordset*)ob;
}
else if ( ob->GetRuntimeClass() == RUNTIME_CLASS(CDaoDatabase) )
{
delete (CDaoDatabase*)ob;
}

m_wndList.GetNext(pos);
}
}

(发表于2007-12-17 16:42:00)

..........................................................................
--------------------next---------------------

阅读(233) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~