gpt4 book ai didi

c++ - MFC:删除动态创建的 CWnd 对象

转载 作者:太空狗 更新时间:2023-10-29 21:30:22 30 4
gpt4 key购买 nike

比方说在一个对话框中,我们动态地创建可变数量的 CWnds...就像每次用户做某事时创建和注册一个 CButton/

一些伪代码...

class CMyDlg : public CDialog
{
vector<CWnd *> windows;

void onClick()
{
CButton *pButton = new CButton(...);
//do other stuff like position it here
windows.push_back(pButton);
}
}

需要显式删除它们还是 MFC 会这样做?如果我必须这样做,它会像往常一样在析构函数中,还是有任何特殊的事情来避免破坏 MFC ...确保我不删除对象,例如,当 HWND 仍在使用时?

最佳答案

CButton *pButton = new CButton(...);

这些是 C++ 对象,需要显式删除。 (其中主框架窗口和 View 是自毁的)。

详细答案可以引用(本人)Destroying Window Objects

关于c++ - MFC:删除动态创建的 CWnd 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2973085/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com