zoukankan      html  css  js  c++  java
  • c++中的vector

    vector是c++中的一种数据结构,确切的说是一个类,相当于一个动态的数组,当无法知道自己需要多大的数组的规模时,用vector来解决可以达到最大节约空间的目的。

    用法

    1. 文件包含
      ‘’’

    include

    using namespace std;
    ···
    2. 变量声明:

    • 声明一个int向量代替一维数组:vectora;。相当于声明了一个没有指定大小可以动态添加删除元素的数组a[]。
    • 用vector代替二维数组,其实只要声明一个一维数组向量即可,而一个数组的名字其实代表它的首地址,所以只要声明一个地址的向量即可,即:vector <int *>a
    1. 具体用法以及函数调用
    • 得到向量中的元素
    vector <int > a;
    int b = 5;
    a.push_back(b);
    cout<<a[0]; 
    

    常用的函数:


    举个例子:
    如:vector c
    c.clear() 移除容器中所有数据。

                             c.empty()         判断容器是否为空。
    
                             c.erase(pos)        删除pos位置的数据
    
                             c.erase(beg,end) 删除[beg,end)区间的数据
    
                             c.front()         传回第一个数据。
    
                             c.insert(pos,elem)  在pos位置插入一个elem拷贝
    
                             c.pop_back()     删除最后一个数据。
    
                             c.push_back(elem) 在尾部加入一个数据。
    
                             c.resize(num)     重新设置该容器的大小
    
                             c.size()         回容器中实际数据的个数。
    
                             c.begin()           返回指向容器第一个元素的迭代器
    
                             c.end()             返回指向容器最后一个元素的迭代器
    

    使用迭代器访问元素

    vector<int>::iterator it;
    for(it=vec.begin();it!=vec.end();it++)
        cout<<*it<<endl;
    

    还可以使用下标访问元素:
    cout<<vec[0]<<endl;记住下标是从0开始的。

  • 相关阅读:
    Sql Server截断日志(转)
    C#/VB.NET语法的比较(转)
    ReportViewer矩阵报表
    逐步学习 iPhone App 开发(1)
    一月二十四日,无家可归
    再见2009
    poj 1376 机器人广搜
    hdu 1004 颜色问题
    hdu 2734 简单地字符串处理
    1116 贪婪的送礼者
  • 原文地址:https://www.cnblogs.com/sanmenyi/p/7270317.html
Copyright © 2011-2022 走看看