关于STL(vector)容器
来源:互联网 发布:vs2013 js 智能提示 编辑:程序博客网 时间:2024/05/14 19:25
关于STL里面的容器,我其实用的也不是很顺,不过不可否认,这个太重要了,
先写一篇整理笔记,日后回顾再看看改改
具体资料:http://baike.baidu.com/view/184178.htm?fr=wordsearch
1.vector<T>c
申请一个名称为c的元素种类为T的容器
这里的元素种类除了int之类的基本数据类型,可以是stack、queue等等
比如
vector< queue<int> >card;
还可以看成一个可以自由伸缩的二维数组
如果直接申请G[MAXD][MAXD]可能开不出来数组,
所以可以使用vector<int>G[MAXD];
每次添加数组元素的使用G[i].push(e),就可以;
这一点在图论打临接表的时候十分好用。
2.元素添加
c.push_back()
这个直接在容器尾部添加元素
c.insert(pos,m);
c.insert(pos,n,m);
c.insert(pos,begin,end);
#include<cstdio>#include<cstring>#include<iostream>#include<vector>using namespace std;#define MAXD 100 + 10int main(){ vector<int>v; vector<int>w; v.push_back(10); printf("V:%d,%d,%d\n",v.front(),v.back(),v.size()); v.insert(v.end(),20); printf("V:%d,%d,%d\n",v.front(),v.back(),v.size()); v.insert(v.begin(),4,5); printf("V:%d,%d,%d\n",v.front(),v.back(),v.size()); printf("W:%d\n",w.size()); w.insert(w.begin(),v.begin(),v.end()); printf("W:%d,%d,%d\n",w.front(),w.back(),w.size());}
3.元素的访问
可以直接利用数组形式进行访问,如v[i];
v.front(); 获取首元素
v.back();获取尾元素
4.元素的删除
c.erase(pos) 删除位置为pos的元素
c.erase(begin,end)删除begin ~ end之间的元素
c.clear()清空容器
下面给出一组代码进行vector的说明
#include<cstdio>#include<cstring>#include<iostream>#include<vector>using namespace std;#define MAXD 100 + 10int main(){ vector<int>V; int n; printf("输入放入容器元素的个数:"); scanf("%d",&n); for(int i = 0;i < n;i++){ int t; scanf("%d",&t); V.push_back(t); } printf("输入插入容器元素的个数:"); scanf("%d",&n); for(int i = 0;i < n;i++){ printf("分别输入插入位置,插入值:"); int x,y; scanf("%d%d",&x,&y); V.insert(V.begin() + x,y); for(int i = 0;i < V.size();i++) printf("%d ",V[i]); printf("\n"); }}
0 0
- 关于STL(vector)容器
- STL 向量容器(vector)
- STL 向量容器(vector)
- STL 向量容器(vector)
- STL 向量容器(vector)
- 学STL谈Vector容器(一)
- STL要点学习(1)--vector容器
- STL学习(三)vector容器学习
- STL系列(2):Vector 向量容器
- STL源码剖析(4):容器(vector)
- C++STL学习(1)容器vector
- STL vector 容器介绍 (转载)
- c++之STL(3) Vector容器
- STL(六)Vector向量容器
- STL vector 容器实现
- STL vector 容器介绍
- STL vector 容器介绍
- STL vector 容器介绍
- 虚拟机搭建beowulf集群
- Android 如何从系统图库中选择图片
- 【学习笔记】C#测试驱动开发
- Java内存泄露与溢出的区别
- 学习网站优化SEO到底难不难
- 关于STL(vector)容器
- 64位与32位下如何使用C/C++调用Telnet
- 窗口关闭后释放内存的方法
- 什么是虚函数?
- solr一致性hash个分布式索引
- C#_在按钮存在的状态获取按键消息
- 周鸿祎:把自己当成打工的,一辈子都是打工的
- Android预安装Apk(解决部分预安装apk不能运行)
- LeaveCriticalSection有BUG?