STL的学习笔记之一 (转)

本文详细介绍了C++ STL中的向量类模板vector的主要特性、声明方式、访问方法及如何进行元素的插入与删除操作。同时提供了丰富的代码示例帮助理解。
STL的学习笔记之一 (转)[@more@]

以下是我在自学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/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值