如下显示了一个无模式的对话框CPathEdit:
void MyDialog::OnClick()
{
//pDialog initialized to NULL in the constructor of CMyWnd class
CPathEdit* pDialog = new CPathEdit();
//Check if new succeeded and we got a valid pointer to a dialog object
if(pDialog != NULL)
{
BOOL ret = pDialog->Create(IDD_DAQ_PATH_EDIT,this);
if(!ret) //Create failed.
AfxMessageBox("Error creating Path Edit Dialog");
pDialog->ShowWindow(SW_SHOW);
}
else
AfxMessageBox("Error Creating Path Edit Dialog Object");
}请问我如何用delete 释放内存呢?需不需要呀??
void MyDialog::OnClick()
{
//pDialog initialized to NULL in the constructor of CMyWnd class
CPathEdit* pDialog = new CPathEdit();
//Check if new succeeded and we got a valid pointer to a dialog object
if(pDialog != NULL)
{
BOOL ret = pDialog->Create(IDD_DAQ_PATH_EDIT,this);
if(!ret) //Create failed.
AfxMessageBox("Error creating Path Edit Dialog");
pDialog->ShowWindow(SW_SHOW);
}
else
AfxMessageBox("Error Creating Path Edit Dialog Object");
}请问我如何用delete 释放内存呢?需不需要呀??
delete pDialog;
void CYourView::OnOpenDlg(void)
{
/*假设IDD_TEST_DLG为已经定义的对话框资源的ID号*/
CTestDlg *dlg=new CTestDlg;
dlg->Create(IDD_TEST_DLG,NULL);
dlg->ShowWindows(SW_SHOW);
/*不要调用 delete dlg;*/
}void CTestDlg1::OnDestroy()
{
CDialog::OnDestroy();
delete this;
}这样OnOpenDlg()不管执行多少次都没有关系了。这是从网上看到的,不知安全乎?
{
CDialog::OnPostNcDestroy();
delete this;
}