Windows窗口如果使用new的方法添加之后,在父窗口析构的时候,有些需要delete有些却不需要delete。这个的确有点坑,由于c++的实现,对于每个自己new的对象,我都会delete删除它,直到某一天删除一个窗口指针时,挂了!!!而且奇怪的时候,另外一个窗口指针对象删除就没事!!!然后百度一下才知道,有些对象有自动清理功能。
不具有自动清除功能的窗口类如下所示。
所有标准的Windows控件类。
1. 从CWnd类直接派生出来的子窗口对象(如用户定制的控件)。
2. 切分窗口类CSplitterWnd。
3. 缺省的控制条类(包括工具条、状态条和对话条)
4. 模态对话框类。
具有自动清除功能的窗口类如下所示
1. 主框架窗口类(直接或间接从CFrameWnd类派生)。
2. 视图类(直接或间接从CView类派生)。