【发布时间】:2014-02-14 16:22:26
【问题描述】:
好的,我正在编写一个对数组执行不同功能的程序。如有必要,阵列将需要更改容量。说明是:
- 创建一个新数组。
- 将旧数组中的内容复制到新数组中。
- 删除旧数组。
这部分是明白的,但我不明白的是如何保持对函数将使用的数组的引用。这是我用于创建新数组并在元素上移动的代码。
int newSize = m_size*2;
double *tempArray= new double[newSize];
for(int i=0; i<m_size-1; i++)
{
tempArray[i] = arr[i];
}
delete []arr;
for(int i=0; i<m_size-1; i++)
{
arr[i] = tempArray[i];
}
delete []tempArray;
}
所有其他方法都使用 arr 所以我想回顾一下。指针不起作用,因为它只指向第一个元素。如何使用我的 arr 变量来引用数组?
【问题讨论】:
-
我认为 delete []arr 应该是 arr = new ....