有办法在C++中扩展动态内存数组。在C++中,可以使用std::vector
来实现动态数组。std::vector
是C++标准库中的一个容器,它可以自动管理内存,并且可以动态地扩展其大小。
以下是一个使用std::vector
的示例:
#include<iostream>
#include<vector>
int main() {
// 创建一个空的动态数组
std::vector<int> arr;
// 向动态数组中添加元素
for (int i = 0; i < 10; ++i) {
arr.push_back(i);
}
// 输出动态数组中的元素
for (int i = 0; i < arr.size(); ++i) {
std::cout<< arr[i] << " ";
}
std::cout<< std::endl;
// 扩展动态数组的大小
arr.resize(20);
// 输出动态数组中的元素
for (int i = 0; i < arr.size(); ++i) {
std::cout<< arr[i] << " ";
}
std::cout<< std::endl;
return 0;
}
在这个示例中,我们首先创建了一个空的动态数组arr
,然后向其中添加了10个元素。接着,我们使用resize()
方法将动态数组的大小扩展为20,并输出其中的元素。
需要注意的是,std::vector
是C++标准库中的一个容器,它并不是C++语言的核心特性。如果您需要使用原生的C++语言特性来实现动态数组,可以使用指针和内存管理函数malloc()
、realloc()
、free()
等。但是,这种方法可能会更加复杂,而且容易出错。因此,建议使用std::vector
来实现动态数组。
领取专属 10元无门槛券
手把手带您无忧上云