假設您有一個容量爲5的數組,並且假設您還有一個可變計數器來計算添加到數組中的每個條目。你將如何實現數組的浮點操作?使用C++語法?數組重新分配C++
void BST::reallocate()
{
item *new_array = new item[size*2];
for (int array_index = 0; array_index < size * 2; array_index++)
{
if (! items[array_index].empty)
{
new_array[array_index].theData = items[array_index].theData;
new_array[array_index].empty = false;
}
}
maxSize += size;
delete [] items;
items = NULL;
items = new_array;
}
如何重新分配數組? BST ctor位於私人物品結構下方,以消除任何混淆。
BST::BST(int capacity) : items(new item[capacity]), Position(0),
leftChild(0), rightChild(0), maxSize(capacity)
{
}
這是在BST頭:
private:
int size;
int maxSize;
int Position;
int leftChild;
int rightChild;
struct item
{
bool empty;
data theData;
};
item *items;
的quesetion是,我似乎具有硬時間與我的項目陣列的再分配。
問題是它正在崩潰 – user40120 2009-11-19 20:02:00
它在哪裏崩潰? – 2009-11-19 20:05:18
其在從項目[i] .theData到new_array [i] .Data的賦值時崩潰。 – user40120 2009-11-19 20:07:44