C++利用new分配的内存发现不够用怎样才能保持原值不变增加内存?

2025-04-14 12:09:33
推荐回答(3个)
回答1:

可以先将*num中的值保存到一个数组X中

然后delete[] num;
int *num = new int[50];
再将X中的原来num中的值放到新的扩大的num中去

回答2:

不能的,数组是连续的一片内存,所以一旦分配就不能增长,因为在这数组尾部的内存可能被用了,那么怎么能增长,C99版以前不支持数组增长

回答3:

把原来的拷贝到新申请的空间中去