以下是我在自学STL的一点笔记,参考书籍《标准C++宝典》。大家如果谁也对最新的C++标准有兴趣的话,想聊一聊,我的E-Mail: tlovexyj@21cn.com
#include
using namespace std;
向量类模板 vector
1.特点
优点: 随机访问、动态改变自身大小、快速地在序列尾部插入和删除元素
缺点: 在除头尾其它位置插入和删除元素效率降低(因为要移动元素以容纳新元素或回收被删除的空间)
2.声明
vector 对象名(大小, 初始值)
例:
vector iVector(100, 0); //大小为100,类型为int,初始所有值为0.
3.访问
通过指示器 iterator(相当于C++里的指针)来操作.
声明
vector ::iterator 对象名
例:
vector ::iterator iter;
4.访问
遍历:
for (iter=iVector.begin(); iter //*iter即为向量iVector里各项的值
取随机值
iVector.at(下标);
5.插入元素(以下介绍都是vector类的成员函数)
push_back(元素) //在尾部插入
例:
iVector.push_back(3);
insert(iterator指针, 元素) //随机插入, iterator用来标明操作的位置
例:
vector ::iterator start;
iVector.insert(start, 1);
insert(iterator指针, 个数, 元素) //把元素的n份拷贝到向量中指针所指定的位置
例:
vector ::iterator start;
iVector.insert(start, 5, 1);
insert(iterator指针, iterator指针开始, iterator指针结尾) //将操作的范围内的值插入到指定位置
例:
vector ::iterator i, start, end;
i =iVector.begin();
start=iVector.begin()+2;
end =iVector.end()-3;
iVector.insert(i, start, end);
6.删除元素(以下介绍都是vector类的成员函数)
pop_back() //在尾部删除
例:
iVector.push_back();
erase(iterator指针) //随机删除
erase(iterator指针开始, iterator指针结尾)//删除范围内的值
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/10752043/viewspace-988334/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/10752043/viewspace-988334/
本文详细介绍了C++ STL中的向量类模板vector的主要特性、声明方式、访问方法及如何进行元素的插入与删除操作。同时提供了丰富的代码示例帮助理解。

被折叠的 条评论
为什么被折叠?



