说来话长
if(pAlgo)
{
delete pAlgo;
pAlgo=NULL;
}
pAlgo=new CLine_Insert;
pAlgo->InitData(this);
break;
pAlgo 是我自己定义的抽象类指针,CLine_Insert 是其子类,其下的InitData 用来在视图上动态创建picture控件。
我想再次运行上面代码后把以前视图上的控件清除,再重画,但是没用,以前的控件还有。
在子类CLine_Insert中定义的析构函数如下
CLine_Insert::~CLine_Insert()       //析构函数
{
delete []pNod;    //pNod 是控件数组的指针}但是我发现重新运行开始的代码,delete pAlgo 后, 设置断点发觉这个析构函数压根就不执行。
真是不懂了,到底怎么回事啊????