C++ 我的C+有问题+;节目。动态调整整数数组大小的发票

C++ 我的C+有问题+;节目。动态调整整数数组大小的发票,c++,arrays,function,pointers,dynamic,C++,Arrays,Function,Pointers,Dynamic,以下是我到目前为止的情况: #包括 #包括 #包括 #包括 #包括 使用名称空间std; int*调整大小(int*&原始、int&大小、常量int&最大大小)//函数原型调整大小 void sortFUNC(int*&original、int&SIZE、const int&maxSIZE)//函数原型sortFUNC int main() { int SIZE=4;//当前数组的大小 int maxSIZE=10;//最终数组的大小 int*original=newint[SIZE]{5,7,

以下是我到目前为止的情况:

#包括
#包括
#包括
#包括
#包括
使用名称空间std;
int*调整大小(int*&原始、int&大小、常量int&最大大小)//函数原型调整大小
void sortFUNC(int*&original、int&SIZE、const int&maxSIZE)//函数原型sortFUNC
int main()
{
int SIZE=4;//当前数组的大小
int maxSIZE=10;//最终数组的大小
int*original=newint[SIZE]{5,7,3,1};//旧(当前)数组

cout每次调用函数rezise时,都需要修改size的值,即使调用函数resize 3次,数组大小始终为size+3。调用resize后,请重试

original[4] = 0;
original[5] = 0;
original[6] = 0;
在那之后,试着这样做

   original[7] = 0;

您应该能够看到错误

您应该与变量名保持一致。您可以显示崩溃的版本吗?请注意,您完全忽略了调整大小函数中的
maxSIZE
参数(它总是使数组3个元素变大)。您还至少有一个内存泄漏。排序函数末尾的移动几乎没有任何作用。当您使用调试器执行程序时,每次执行一行,并检查每个步骤上所有变量的值,这样您就可以准确地观察程序的执行方式以及为什么执行它,以及观察到的情况您是否说明了程序崩溃的原因?为什么不使用
std::vector
   original[7] = 0;