gpt4 book ai didi

c++ - 在 C++ 中实现增量数组

转载 作者:太空狗 更新时间:2023-10-29 23:41:40 24 4
gpt4 key购买 nike

我想实现一个可以随着新值的添加而递增的数组。就像在 Java 中一样。我不知道该怎么做。谁能给我一个方法?

这是出于学习目的,因此我不能使用 std::vector

最佳答案

这里是一个起点:您只需要三个变量,nelemscapacity 和一个指向实际数组的指针。因此,您的类(class)将以

class dyn_array
{
T *data;
size_t nelems, capacity;
};

其中 T 是您要存储的数据类型;为了获得额外的荣誉,请将其设为模板类。现在实现教科书或 Wikipedia page on dynamic arrays 上讨论的算法.

请注意,new/delete 分配机制不支持像 C 的 realloc 那样增长数组,因此您实际上是在移动data的内容随着容量的增加而变化。

关于c++ - 在 C++ 中实现增量数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8895695/

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