我正在使用Visual Studio进行编码,但我不明白为什么只有在条件条件语句else下方的行上出现错误“错误C6001-使用未初始化的内存'* tempPtr'”。
void removeNumber(double*& arrayPtr,double number,int& size) {
bool found = false;
double* tempPtr = new double[size-1];
for (int i = 0; i < size; i++) {
if (arrayPtr[i] == number) {
found = true;
}
else if (found == false && arrayPtr[i] != number) {
arrayPtr[i] = tempPtr[i];
}
else {
arrayPtr[i] = tempPtr[i - 1];
}
} delete[] arrayPtr;
arrayPtr = tempPtr;
--size;
}