Term *temp;
temp = new Term[(getCapacity() + 1)];
capacity++;
temp = ptr;
ptr[getEltsInUse()] = T;
eltsInUse++;
delete [] ptr; // reclaim space
ptr = temp;
我正在使用一个Array对象,在这里我试图在数组满时添加一个对象。在这里,它声明一个更大的临时指针,并将原始文件复制到temp,然后删除原始。最后一行是为了将ptr指针移动到指向与temp相同的东西,但我不确定我做得对。我给出的伪代码是:
对不起,如果这是一个非常明显的答案。
答案 0 :(得分:0)
这样的东西?
Term *temp;
temp = new Term[capacity + 1]; //allocate memory for capacity + 1
for (int i = 0; i < capacity; i++) //copy the old data to the new memory
temp[i] = ptr[i];
temp[capacity++] = NewElement; //copy new element to last place in new memory
delete ptr; //free old memory.
ptr = temp;