16,548
社区成员




STDMETHODIMP CIn::opendlg()
{
AFX_MANAGE_STATE(AfxGetStaticModuleState())
CDlg *pDlg = new CDlg;
pDlg->Create(IDD_DIALOG1,NULL);
pDlg->ShowWindow(SW_SHOW);
return S_OK;
}
void CDlg::OnClose()
{
CDialog::OnClose();
DestroyWindow();
}
void CDlg::PostNcDestroy()
{
delete this;
CDialog::PostNcDestroy();
}
void CMainFrame::OnOpen1()
{
//g_Oper1是接口指针,在CMainFrame中OnCreate中创建
if(NULL != g_Oper1)
{
g_Oper1->opendlg();
}
}
void CSysCfgLocalDlg::PostNcDestroy()
{
// TODO: 在此添加专用代码和/或调用基类
CDialog::PostNcDestroy();
delete this;
}
void CSysCfgLocalDlg::OnCancel()
{
// TODO: 在此添加专用代码和/或调用基类
DestroyWindow();
//CDialog::OnCancel();
}
我是这么写的,好像没发现内存泄漏~
http://msdn.microsoft.com/en-us/library/5zba4hah.aspx