[STL] vector 可变数组



点击查看代码
#include
#include

using namespace std;

int main()
{
    // 初始化 a 为 1, 2, 3
    vector a({1, 2, 3});
    // 也可以是 vector a {1, 2, 3};

    // 三种遍历方式

    for (int i = 0; i < a.size(); i++)
        cout << a[i] << ' ';
    cout << endl;

    // i 类型是迭代器, auto 相当于 vector::iterator
    for (auto i = a.begin(); i != a.end(); i++)
        // 注意是 * i
        cout << * i << ' ';
    cout << endl;

    for (int x : a)
        cout << x << ' ';
    cout << endl;

    return 0;
}

  1. vector 实现动态存储的方式:倍增,当内存不够时,开辟更大的内存空间,并把原数据复制到新的内存空间;
STL