0

我有一个来自 boost c++ 库的堆数据结构。它包含一些指向另一个堆对象的指针,该对象本身指向一些对象(即,我有一堆堆)。当我在主堆上调用 clear 时,我会清除堆。但我想同时删除其中的对象。有什么方法可以在清理堆中的对象时调用(自动)析构函数?

谢谢

void myClean(HeapType Heap)
{
    innerHeapType *inHeap = Heap->top();
    innerObjType  *tmp2;
    while (inHeap->size()>0)
    {
        tmp2 = curHeap->top();
        inHeap->pop();
        delete tmp2;
    }
    inHeap->clear();

    Heap->pop();
    delete inHeap;
}
4

0 回答 0