无模式对话框的问题
再做PropertySheet的时候,要添加属性页,属性页是无模式对话框
一般都这么做:
声明:
CPropertyPage* m_pPage1;
CPropertyPage* m_pPage2;
.......
然后在属性框初始化的时候:
m_pPage1 = new CPropertyPage;
m_pPage2 = new CProperyPage;
m_pPage->Create(.....);
m_pPage->Create(....);
AddPage(m_pPage1);
AddPage(m_pPage2);
然后在CPropertyPage的OnPostNcDestroy里面加入delete this
但是如果在PropertySheet中,你申明的属性页成员变量如果不是指针,即:
CPropertyPage m_page1;
CPropertyPage m_page2;
然后再属性框初始化的时候:
m_page1.Create(...);
m_page2.Create(...);
AddPage(&m_page1);
AddPage(&m_page2);
在PropertyPage的OnPostNcDestroy里面不加入delete this一句
也可以运行,并且不会内存泄漏
第二种做法是不是不合理?