vector为了支持快速的随机访问,vector容器的元素以连续方式存放,每一个元素都紧挨着前一个元素存储. 当vector添加一个元素时,为了满足连续存放这个特性,都需要重新分配空间.拷贝元素.撤销旧空间,这样性能难以接受.因此STL实现者在对vector进行内存分配时,其实际分配的容量要比当前所需的空间多一些.就是说,vector容器预留了一些额外的存储区,用于存放新添加的元素,这样就不必为每个新元素重新分配整个容器的内存空间. 通过下面代码可以更清楚的看到vector在push_back.…