- 动态性:普通数组在声明时需要指定固定的大小,且大小在声明后不可改变。而 vector 数组是一种动态数组,它可以根据需要自动调整大小,不需要预先指定固定大小。
- 自动追加元素:当 vector 数组中的元素数量达到其当前容量上限时,vector 数组会自动分配更大的内存空间来容纳新的元素,并将原来的元素拷贝到新的内存空间中。这种机制使得我们可以通过简单地追加元素来扩展数组,而不需要手动管理内存空间。
vector 数组的能力来自于其内部实现的动态数组数据结构。它通过动态地分配内存来存储元素,并维护一个指示当前容量的变量。当需要追加元素时,如果当前容量已满,vector 数组会申请更大的内存空间,并将原来的元素拷贝到新的内存空间中。这种方式使得 vector 数组能够灵活地增长,而不受固定大小的限制。
总结起来,与普通数组相比,vector 数组具有动态调整大小和自动追加元素的能力,使得它更加方便灵活地管理元素。