我有以下函数和类层次结构,这样 Multinumber 由 Pairs、Rational 和 Complex 继承。所有这些共享功能在 Multinumber 中都是虚拟的。我的问题是以下代码。按照现在的编写方式,newElement 变量在添加到 my setArray
which 的 type时超出范围Multinumber**
,我需要想办法在这个函数中分配内存。奇怪的是,传递给函数的参数,即使打印在第一行,当我执行时总是空的cout<<newElement->tostring();
谁能告诉我这里有什么问题?
bool Set::addElement(Multinumber* newElement)
{
bool success = false;
if(isFull())
{
resize();
}
if(!isMember(newElement))
{
setArray[numElements] = newElement;
numElements++;
success = true;
}
return success;
}
编辑:是的,海报是正确的,这是家庭作业