阅读量:3
在C++中,动态数组可以通过以下几种方式进行初始化和赋值:
- 使用new运算符和数组大小来动态分配内存,并通过循环或索引逐个赋值。
int size = 5; int* arr = new int[size]; for (int i = 0; i < size; i++) { arr[i] = i; }
- 使用new运算符和初始化列表来动态分配内存并初始化数组元素。
int* arr = new int[5]{1, 2, 3, 4, 5};
- 使用vector容器类来创建动态数组,并使用初始化列表或push_back()函数进行赋值。
#include <vector> std::vector<int> arr = {1, 2, 3, 4, 5}; // 或者 std::vector<int> arr; arr.push_back(1); arr.push_back(2); arr.push_back(3); arr.push_back(4); arr.push_back(5);
无论是使用原始指针还是容器类,都需要手动释放内存或让对象离开作用域以自动释放内存。例如,使用delete运算符释放原始指针的内存:
delete[] arr;