C++ STL熟悉并巩固(四)------vector
本文中的重要概念摘自C语言中文网
链接:http://c.biancheng.net/view/348.html
使用vector要包含头文件vector.
vector 是顺序容器的一种。vector 是可变长的动态数组,支持随机访问迭代器,所有 STL 算法都能对 vector 进行操作。要使用 vector,需要包含头文件 vector。
vector的底层是由一个动态分配的数组来实现的。动态分配的存储空间一般都大于存放元素所需的空间,哪怕容器中只有一个元素,也会分配 32 个元素的存储空间。这样做的好处是,在尾部添加一个新元素时不必重新分配空间,直接将新元素写入适当位置即可。在这种情况下,添加新元素的时间也是常数。
而当vector对象中的元素不断增大时,超出vector对象当前的最大长度则会重新分配一个长度为当前最大长度的两倍的空间,再将里面的数据***到新的更大的空间,最后删除原空间,如果是这种情况的话,添加新元素的时间就不是一个常数了。
vector中的成员函数