vector:

向量容器,动态数组,类模板

定义和初始化:

vector<T> v1;           //v1是空vector,元素类型是T类型,执行默认初始化,int为0,string为空串
vector<T> v2(v1);       //v2中包含有v1所有元素的副本
vector<T> v3(n,val);    //v3包含了n个重复的元素,每个元素的值都是val
vector<T> v4(n);        //v4包含了n个重复的执行了值初始化的对象
vector<T> v5{a,b,c,...} //以大括号中的元素初始化

vector中的操作

v.push_back(val)          //向v的末端添加一个值为val的元素
v.pop_back()              //删除最后一个元素
v.empty()                //如果v不含任何元素,返回true,否则返回false
v.size()               //返回v中元素个数,类型为vector<T>::size_type
v1==v2                   //v1等于v2仅当他们的元素个素相等,以及各位置所对应的元素的值相等
<,<=,>,>=                //以字典序进行比较
v[i]                     //通过下标访问v中第i个元素,不能用此添加,如果v为空就没有下标
v.erase(iterator position)    //删除指定位置的元素
v.erase(iterator begin,iterator end) //删除指定范围的元素
v.insert(it,val)      //在迭代器it前插入一个值为val的元素

迭代器:iterator

C++ STL 中各容器都有相应类型的iterator;

一般使用iterator来访问容器中的元素。

iterator的声明方式

例:
string:: iterator it;
vector<T>:: iterator it;

学习代码

#include <iostream>
#include <vector>
#include <algorithm>

using namespace std;
int main()
{
    vector<int> v;
    v.push_back(50);
    v.push_back(2991);
    v.push_back(23);
    v.push_back(9999);

    cout << "向量v里面的数据:" << endl;
    vector<int>::iterator i = v.begin();
    while (i != v.end())
    {
        cout << *i << endl;
        ++i;
    }
    vector<int>::iterator iElement = find(v.begin(), v.end(),2991);//find()包含在algorithm头文件中
    if (iElement != v.end())
    {
        int nPosition = distance(v.begin(), iElement);     //distance()包含在algorithm头文件中
        cout << "Value" << *iElement << endl;
        cout << "nPosition" << nPosition << endl;
    }
    getchar();
    return 0;
}

C++ vector 常用API的更多相关文章

  1. java基础3.0:Java常用API

    本篇介绍Java基础中常用API使用,当然只是简单介绍,围绕重要知识点引入,巩固开发知识,深入了解每个API的使用,查看JavaAPI文档是必不可少的. 一.java.lang包下的API Java常 ...

  2. 人工智能常用 API

    人工智能常用 API 转载  2016年07月13日 19:17:27 2047 机器学习与预测 1.AlchemyAPI  在把数据由非结构化向结构化的转化中运用得较多.用于社交媒体监控.商业智能. ...

  3. html5 canvas常用api总结(一)

    1.监听浏览器加载事件. window.addEventListener("load",eventWindowLoaded,false); load事件在html页面加载结束时发生 ...

  4. compass General 常用api学习[Sass和compass学习笔记]

    compass 中一些常用api 包括一些浏览器hack @import "compass/utilities/general" Clearfix Clearfix 是用来清除浮动 ...

  5. C++ 中超类化和子类化常用API

    在windows平台上,使用C++实现子类化和超类化常用的API并不多,由于这些API函数的详解和使用方法,网上一大把.本文仅作为笔记,简单的记录一下. 子类化:SetWindowLong,GetWi ...

  6. node.js整理 02文件操作-常用API

    NodeJS不仅能做网络编程,而且能够操作文件. 拷贝 小文件拷贝 var fs = require('fs'); function copy(src, dst) { fs.writeFileSync ...

  7. js的常用api

    JavaScript常用API总结 原创 2016-10-02 story JavaScript 下面是我整理的一些JavaScript常用的API清单. 目录 元素查找 class操作 节点操作 属 ...

  8. JS操作DOM常用API总结

    <JS高程>中的DOM部分写的有些繁琐,还没勇气整理,直到看到了这篇博文 Javascript操作DOM常用API总结,顿时有了一种居高临下,一览全局的感觉.不过有时间还是得自己把书里面的 ...

  9. request对象常用API 获取请求参数的值 request应用 MVC设计模式

    1 request对象常用API   1)表示web浏览器向web服务端的请求   2)url表示访问web应用的完整路径:http://localhost:8080/day06/Demo1     ...

随机推荐

  1. Leetcode题解(29)

    93. Restore IP Addresses 题目 分析:多重循环,判断小数点合适的位置 代码如下(copy网上) class Solution { public: vector<strin ...

  2. 实用 .htaccess 用法大全【转载】

    转载:http://www.techug.com/htaccess-snippets 这里收集的是各种实用的 .htaccess 代码片段,你能想到的用法几乎全在这里. 免责声明: 虽然将这些代码片段 ...

  3. ligerUI---ligerGrid中treegrid(表格树)的使用

    写在前面: 表格树是在普通ligerGrid的基础上,做了一点改变,使数据以表格树的形式显示出来,适用于有级别的数据比如菜单(有父菜单,父菜单下面有子菜单).表格树的显示有两种方法,可以根据自己的项目 ...

  4. Python通过跳板机链接MySQL的一种方法

  5. Struts2开发文档

    struts2配置 struts2核心配置文件约束 <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts ...

  6. mapbox-gl象形文字字体glyph生成

    简介 mapbox-gl可以对文字显示各种字体(依赖ttf文件),内部采用的是读取protobuf文件 环境条件 硬件:mac.网络 软件:nodejs.npm 创建mapbox-gl可用的字体pro ...

  7. 70、django之Ajax初识

    Ajax准么说是用于Javascript与服务器端进行交互的,我们之前呢没有了解ajax也同样可以完成与服务器的交互,那么ajax的优势在哪里?首先ajax是异步交互的也就是说我们基本不会遇到卡顿现象 ...

  8. Java实现TFIDF算法

    算法介绍 最近要做领域概念的提取,TFIDF作为一个很经典的算法可以作为其中的一步处理. 关于TFIDF算法的介绍可以参考这篇博客http://www.ruanyifeng.com/blog/2013 ...

  9. C# 使用正则表达式去掉字符串中的数字

    /// <summary>/// 去掉字符串中的数字/// </summary>/// <param name="key"></param ...

  10. Node学习笔记 http

    node url querystring 第二个参数指定分隔符 也可以指定三个参数,效果和两个参数类似 不同于querystring,下面是querystringfy的用法 queryescape与e ...