VC语言

本类阅读TOP10

·VC++ 学习笔记(二)
·用Visual C++打造IE浏览器(1)
·每个开发人员现在应该下载的十种必备工具
·教你用VC6做QQ对对碰外挂程序
·Netmsg 局域网聊天程序
·Windows消息大全
·VC++下使用ADO编写数据库程序
·VC++学习笔记(四)
·非法探取密码的原理及其防范
·怎样在VC++中访问、修改注册表

分类导航
VC语言Delphi
VB语言ASP
PerlJava
Script数据库
其他语言游戏开发
文件格式网站制作
软件工程.NET开发
STL的学习笔记之一

作者:未知 来源:月光软件站 加入时间:2005-2-28 月光软件站

以下是我在自学STL的一点笔记,参考书籍《标准C++宝典》。大家如果谁也对最新的C++标准有兴趣的话,想聊一聊,我的E-MAIL:  [email protected]

#include <vector>
using namespace std;
向量类模板 vector

1.特点
  优点: 随机访问、动态改变自身大小、快速地在序列尾部插入和删除元素
  缺点: 在除头尾其它位置插入和删除元素效率降低(因为要移动元素以容纳新元素或回收被删除的空间)

2.声明
  vector <数据类型> 对象名(大小, 初始值)
      例: 
          vector <int> iVector(100, 0);  //大小为100,类型为int,初始所有值为0.

3.访问
  通过指示器 iterator(相当于C++里的指针)来操作.
  声明
    vector <数据类型>::iterator 对象名
      例:
          vector <int>::iterator iter;
     
4.访问
  遍历:
    for (iter=iVector.begin(); iter<iVector.end(); iter++);
      //*iter即为向量iVector里各项的值
  取随机值
    iVector.at(下标);
   
5.插入元素(以下介绍都是vector类的成员函数)
    push_back(元素) //在尾部插入
      例:
          iVector.push_back(3);
   
    insert(iterator指针, 元素) //随机插入, iterator用来标明操作的位置
      例:
          vector <int>::iterator start;
          iVector.insert(start, 1);
       
  insert(iterator指针, 个数, 元素) //把元素的n份拷贝到向量中指针所指定的位置
      例:
          vector <int>::iterator start;
          iVector.insert(start, 5, 1);
       
  insert(iterator指针, iterator指针开始, iterator指针结尾) //将操作的范围内的值插入到指定位置
      例:
          vector <int>::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指针结尾)//删除范围内的值




相关文章

相关软件