vector是STL中一种可动态增长的数组容器。
1、 三段代码分别用于测试vector的三种内置方法功能。
2、 新建一个空的向量容器。
3、 输出空向量的大小和容量信息。
4、 通过resize和reserve方法分别调整大小和容量。
5、 分别输出操作后的大小与容量数值。
6、 结果如下所示
7、 调用resize进行扩容时,会自动触发元素的构造函数。因此,在执行resize后查看vector的size和capacity,二者均会发生改变,说明容器不仅完成了空间扩展,还对新增的元素进行了构造初始化,确保其处于有效状态。
8、 reverse仅调整容器容量,改变vector的capacity值,不触发构造函数调用,因此实际元素数量即size保持不变。
9、 vector的clear方法仅重置有效元素个数,不会释放内存空间。因此,若强行访问原内存地址,理论上仍可读取原有数据,但这些数据已标记为无效,属于脏数据,存在安全隐患。
