MFC 非模态对话框退出出现内存泄漏问题解决

问题描述
MFC在ChildFrame中采用非模态的方式调用一个对话框,直接退出对话框就出现了下图的错误。
在这里插入图片描述
问题解决
1、在对话框窗口中,添加OnClose()以及PostNcDestroy()两个函数
在这里插入图片描述
2、代码如下

void CDlg::PostNcDestroy()
{
    
    
	// TODO: 在此添加专用代码和/或调用基类
	delete this;
	CDialogEx::PostNcDestroy();
}
void CDlg::OnClose()
{
    
    
	// TODO: 在此添加消息处理程序代码和/或调用默认值
	DestroyWindow();
	// **划重点** 一定要把原有的注释掉   
	//CDialogEx::OnClose();   
}

猜你喜欢

转载自blog.csdn.net/qq_40247982/article/details/107886901
今日推荐