我有一类称为堆是指针的向量,以HeapItem对象C++深拷贝载体的指针对象
vector<HeapItem*> myHeap;
我想创建堆的深层副本,这样我可以删除所有项目复制而不影响原始堆。
EX:
OriginalHeap = new Heap();
OriginalHeap.Insert(HeapItem1);
OriginalHeap.Insert(HeapItem2);
OriginalHeap.Insert(HeapItem3);
CopyHeap = OriginalHeap;
CopyHeap.deleteMin();
print(OriginalHeap);
print(CopyHeap);
输出:
OriginalHeap = HeapItem1,HeapItem2,HeapItem3
CopyHeap = HeapItem2,HeapItem3
是HeapItem的基类吗? – 2014-11-22 03:34:23