<分区>
我已经在 C++ 中声明了一个具有一定大小的 int 数组。 比如说,int a[6]
在运行时,如果我的数组大小超过 6,那么我需要增加它。
我不会使用指针、 vector ,用户也不会给出大小。
<分区>
我已经在 C++ 中声明了一个具有一定大小的 int 数组。 比如说,int a[6]
在运行时,如果我的数组大小超过 6,那么我需要增加它。
我不会使用指针、 vector ,用户也不会给出大小。
最佳答案
C 数组在编译时静态解析,因此无法在运行时调整大小。
如果您不想使用std::vector
、malloc
或new
,还有另一种选择:声明一个“big -enough”数组,然后将使用的元素数保存在另一个变量中。例如:
int a[big_enough];
size_t a_size = 0;
但我的建议绝对是使用std::vector
!例如:
std::vector<int> a(6);
初始化一个 6 个 int
等于 0
的 vector 。
如果你需要改变他们的值(value),你可以访问他们
a[i] = 3;
其中 i
是 0
和 5
之间的整数(即 a.size()
)。
顺便说一句,您通常不想明确设置 vector 大小。声明为空,然后一个一个添加元素。例如:
std::vector<int> a;
a.push_back(-3);
关于c++ - 在没有 vector ,指针的情况下在c++中在运行时增加数组大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29144255/