warning :OnDestroy or PostNcDestroy in derived class will not be called

应用程序中使用指针创建了对话框,在析构函数中使用delete时,会出现以下警告:

Warning: calling DestroyWindow in CDialog::~CDialog --
OnDestroy or PostNcDestroy in derived class will not be called.

我们在释放指针的时候应该先通过对话框指针调用DestroyWindow()方法,然后再用delete删除。

CDlg::~CDlg()
{
 if(m_pDlg!= NULL)
 {
  m_pDlg->DestroyWindow();
  delete m_pDlg;
 }
}

只有这样才可以把这个警告给去掉

 

备注:

       接了两次外包,发现有些问题,决定不再接外包了,第一:它影响到我的正常上班,第二:因为都是私人或是小公司的外包,无法像大公司一样,把需求,功能说清楚,以致做一下停一下,又有新功能又做一些,周期太长,钱太少。特别说明,已经不再接外包,如果接的话,就是牵个线了。

 

 

你可能感兴趣的:(Class)