在C++中,数组的大小是静态的,一旦声明后就不能改变。如果需要动态调整数组的大小,可以使用动态数组或者使用std::vector类。
int *arr = new int[size]; // 创建动态数组
delete[] arr; // 释放内存
在需要调整数组大小时,可以先创建一个新的动态数组,然后将原数组的元素复制到新数组中,并释放原数组的内存。例如:
int newSize = 10;
int *newArr = new int[newSize]; // 创建新数组
std::copy(arr, arr + size, newArr); // 复制元素
delete[] arr; // 释放原数组内存
arr = newArr; // 更新指针
#include <vector>
std::vector<int> vec;
vec.resize(10); // 调整数组大小为10
vec.push_back(5); // 在末尾添加元素
vec.pop_back(); // 删除末尾元素
通过使用动态数组或std::vector类,可以方便地进行数组大小的调整操作。