vector
连续存储结构,每个元素在内存上是连续的,每个元素有固定的位置,取决于插入的顺序和时机;支持 高效的随机访问和在尾端插入/删除操作,但其他位置的插入/删除操作效率低下; 相当于一个数组(本质上是一个动态数组),但是与数组的区别为:内存空间的扩展。vector支持不指定vector大小的存储,但是数组的扩展需要程序员自己写。
vector使用的一个小例子
#include<iostream>
#include<vector>
struct Vertex
{
float x, y, z;
};
//<<操作符重载
std::ostream& operator<<(std::ostream& stream, const Vertex& vertex)
{
stream << vertex.x << "," << vertex.y << "," << vertex.z;
return stream;
}
int main()
{
std::vector<Vertex> vertices;
vertices.push_back({
1, 2, 3 });
vertices.push_back({
4, 5, 6 });
vertices.push_back({
7, 8, 9 });
for (int i = 0; i < vertices.size(