能否在数据容器中保存窗体的实例?
我想做一个试验,就是在函数中new一个窗体,然后把实例保存在一个数据容器中。
insert(CDialog* dlg,nodedlg* node){
thedata = new nodedlg;//自定义的结构体链表节点
memcpy(&thedata->dlg,dlg,sizeof(node->dlg));//复制实例内容
thedata->nextnode = node->nextnode;
node->nextnode = thedata;
}
节点结构体如下
typedef struct nodedlg{
CDialog dlg;
nodedlg* nextnode;
}dlgitem;
代码挺垃圾的讲究看,不好意思。
我现在能插入,取出来都行,但是这个保存的实例却不能发挥作用。
我这么想的,新new的窗体尽管把相关的内容保存到了链表里面(包括句柄什么的)。但是当我delete这个new出来的东西以后,句柄就失效了,当我取出内容的时候已经没有这个窗体,所以就不会显示出来。请问是不是这么回事?