所以继承于 QObject 的类, 在删除前 父结点删除,
父级的类会把所有子结点删除。如果 派生类的大于基类,内存不会泄露?
public CA
{
virtual func() = 0;
};
public CB : CA
{
virtual func() = 0;
};
void main()
{
CA* a = new CB;
delete a;
}
类似于这样的不会泄?
------解决方案--------------------
基类析构做成虚函数就行了,c++课程里有说
------解决方案--------------------
通常需要把基类的析构函数定义成虚函数,这样在把基类指针指向派生类时,当delete基类指针时会调用派生类的析构函数。