2.vector数组
- 创建vector数组
vector<int> myint{ ,,,, }; - 尾部插入
for (int i = ; i < ; i++)
{
myint.push_back(i); } - 读取头部和尾部
cout << myint.front() << endl;
cout << myint.back() << endl; - 动态调整大小
myint.resize();//动态调整大小
- 设置只有六个数据但是缓冲区有90
myint.resize(, );//设置只有六个数据,但是缓冲有90
- 正向读取
for (auto ib = myint.begin(), ie = myint.end(); ib != ie; ib++)
{
cout << *ib << endl;
} - 逆向读取
for (auto rb = myint.rbegin(), re = myint.rend(); rb != re; rb++)
{
cout << *rb << endl;
} - 读取
for (int i = ; i < myint.size(); i++)
{
cout << myint[i] << endl;
} for (auto i : myint)
{
cout << i << endl;
} - 重新初始化
myint.assign(, );
- 根据位置插入
auto it = myint.begin() + ;
myint.insert(it, );//根据位置插入 - 插入一个数组
int a[] = { ,,,, };
myint.insert(it, a, a + );//插入一个数组 - 插入一个vector
vector<int> myintX = { ,, };
//批量插入
myint.insert(it, myintX.begin(), myintX.end()); - 删除和批量删除
myint.erase(it);
myint.erase(myint.begin(), myint.begin() + );//批量删除 - 调用分配器使用自己分配的内存
//调用分配器
vector<int> mymem;
int *p = mymem.get_allocator().allocate();//获取分配器分配内存
for (int i = ; i < ; i++)
{
cout << (p[i] = i) << endl;
}
myint.get_allocator().deallocate(p, );//释放内存 - vector嵌套
//vector嵌套
vector<int> myint1{ ,, };
vector<int> myint2{ ,, };
vector<int> myint3{ ,, };
vector<vector<int>> myallint{ myint1,myint2,myint3 };
for (auto i : myallint)
{
for (auto j : i)
{
cout << j << endl;
}
}
2.vector数组的更多相关文章
- c++中的array数组和vector数组
我觉得实验一下会记得比较牢,话不多直接上代码. 下面是array数组,感觉用的不多. //cpp 风格数组 array #include <iostream> #include <a ...
- c++ vector数组的定义使用
/* *********************************************** Author :guanjun Created Time :2017/3/18 13:32:52 ...
- c++ vector数组的使用
介绍: 首先我们要明白以下几点: 1.vector数组是一个能存放任意数据类型(类,结构,普通变量类型等)的动态数组!,在数据结构中就相当于顺序储存的线性表,寻找元素非常快,但是插入元素的时间却很大( ...
- vector数组的相关知识
Vector 类实现了一个动态数组.和 ArrayList 很相似,但是两者是不同的: Vector 是同步访问的. Vector 包含了许多传统的方法,这些方法不属于集合框架. Vector 主要用 ...
- 动态创建二维vector数组 C和C++ 及指针与引用的区别
二维vectorvector<vector <int> > ivec(m ,vector<int>(n)); //m*n的二维vector 动态创建m*n的二 ...
- ArrayList , Vector 数组集合
ArrayList 的一些认识: 非线程安全的动态数组(Array升级版),支持动态扩容 实现 List 接口.底层使用数组保存所有元素,其操作基本上是对数组的操作,允许null值 实现了 Randm ...
- UVa——1593Alignment of Code(string重定向+vector数组)
UVA - 1593 Alignment of Code Time Limit: 3000MS Memory Limit: Unknown 64bit IO Format: %lld & ...
- C++ 中vector数组的使用
(1)头文件:#include<vector>.(2)创建vector对象: vector < 类型 > 名字; 例:vector<int> vec;(3) ...
- 妙用Pixel bender执行复杂运算/普通数据运算 传递Vector数组
最近发现pixel bender有两个特殊点: 1.Input Image4,不单单可以用BitmapData来初始化,也可以用Vector.<Number>初始化. 2.ShaderJo ...
随机推荐
- OpenCv 人脸检測的学习
近期公司要组织开发分享,可是自己还是新手真的不知道分享啥了,然后看了看前段时间研究过OpenCv,那么就分享他把. openCv就不介绍了,说下人脸检測.事实上是通过openCv里边已经训练好的xml ...
- 思科E3200 路由器 DD-WRT 设置花生壳和3322.org动态域名(DDNS)
花生壳设置(已測试) ddns.oray.com:80 username aaaa password bbbb 主机名 abc.gicp.net URL /ph/update?ho ...
- 存储过程和transaction
https://stackoverflow.com/questions/11531352/how-to-rollback-a-transaction-in-a-stored-procedure BEG ...
- Anatomy of an IIS7 configuration path
The concept of configuration paths is fundamental to managing and operating an IIS server, so I want ...
- Java 开发 2.0: 现实世界中的 Redis
原文地址:http://www.ibm.com/developerworks/cn/java/j-javadev2-22/ 之前,我已在本系列中讨论过 NoSQL 的概念,也介绍了一些与 Java 平 ...
- MySql免安装版绿化版安装配置,附MySQL服务无法启动解决方案
整理于:https://www.cnblogs.com/cenwei/p/6249856.html 我下载的MySQL版本是:mysql-5.6.15-winx64 一.解压文件 下载好My ...
- CentOS6.x操作系统自带的 DM Multipath(DMMP)多路径软件配置说明。
CentOS系统下的多路径软件是操作系统自带的 DM Multipath(DMMP)工具.------------------------------------------------------- ...
- Metro界面的真正意义
昨天去客户那给安装防火墙和交换机,因为客户和我们公司签订了维保的合同,然后我们公司两个人去了客户那跟客户沟通也去顺路去做巡检. 客户之前跟我们公司采购了一台DELL的PC服务器,预装了win serv ...
- spark系统实现yarn资源的自动调度
参考: http://blog.csdn.net/dandykang/article/details/48160953 对于Spark应用来说,资源是影响Spark应用执行效率的一个重要因素. ...
- Lua刚開始学习的人(一)--Lua 简单教学
近期因为工作原因.临时木有<Oracle起步学习>续集.领导知道学习下Lua脚本语言.看了一周了.趁热打铁,留下点实用的东西吧. 本系列会主要针对宿主语言为 Delphi,原理都是一样的, ...