gpt4 book ai didi

c++ - 在没有指针的情况下随时随地获得额外的内存

转载 作者:塔克拉玛干 更新时间:2023-11-03 08:19:40 25 4
gpt4 key购买 nike

在 C++ 中,是否可以在程序运行期间创建一个新数组?具体来说,假设我在一个类中有一个数据成员,变量的名称是 array,它是一个大小为 10 的数组。假设在运行时我想要一个更大的数组,我可以不使用指针来做到这一点吗?我可以有如下方法吗?

int[] expandCapacity(int currentCapacity) {
int [] arr = new int[currentCapacity*2];
currentCapacity*=2;
return arr;
}

为什么我不能使用这种方法来扩展当前数组的容量:

currentCapacity = 10;
array = expandCapacity (currentCapacity);

如果这行得通,就不需要使用指针了。我觉得我在这里遗漏了一些重要的东西。如果您能指出我遗漏的内容,我将不胜感激。

最佳答案

不,这是不可能的。

但是,您自己这样做是纯粹的精神错乱。使用 std::vector<int>并让您的编译器实现者为您完成这一切。

关于c++ - 在没有指针的情况下随时随地获得额外的内存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11086052/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com