回 帖 发 新 帖 刷新版面

主题:MFC弹出非模态对话框 指针与对象

CTestDialog *pTestDlg = new CTestDialog(); 
pTestDlg->Create(IDD_DIALOG_TEST, this); 
pTestDlg->ShowWindow(SW_SHOW); 
///下面三行错误 
//CTestDialog dlg1; 
//dlg1.Create(IDD_DIALOG_TEST, this); 
//dlg1.ShowWindow(SW_SHOW); 
为什么前三行不能用后三行代替? 
用后三行,弹出的对话框闪了一下就消失了 
用前三行能正确弹出对话框

回复列表 (共3个回复)

沙发

看你这些代码放在哪啦,后三行如果在一个域的话,会析构的.析构就没了

板凳


一个域是什么意思?

3 楼

{
    CDialog  dlg;  // 这里构造

}  // 这里析构

我也说不清,看书吧

我来回复

您尚未登录,请登录后再回复。点此登录或注册