我相信我的错误,从这些家伙茎,因为在我分配了一套新的另一套错误发生。设置Z - > A^B(返回Set的交集操作)。我只是不确定我做错了什么,任何帮助将不胜感激!C++双重释放或腐败(fasttop) - 不知道从哪里基于Valgrind的误差为
Set::~Set()
{
Cap = 0;
Num = 0;
delete [] Pool;
Pool = NULL;
}
Set::Set(const Set &A)
{
Cap = A.capacity();
Num = A.size();
Pool = A.Pool;
}
Set& Set::operator=(const Set &X)
{
Cap = X.capacity();
Num = X.size();
Pool = X.Pool;
return *this;
}
'Pool = A.Pool'你似乎需要制作一个池副本,而不是指向另一个Set池。这可能是你的错误。 – andre
如果有人可以给我一个如何在这个例子中做一个很好的副本的例子,我已经尝试了多件事情,但似乎没有任何工作。 – sharkman