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 ...
随机推荐
- 手动创建DataTable并添加数据
DataTable dt=new DataTable(); DataColumn dc=dt.Columns.Add("OBJECTID",Type.GetType("S ...
- cocos2d-x 2.2.0 怎样在lua中注冊回调函数给C++
cocos2d-x内部使用tolua进行lua绑定.可是引擎并没有提供一个通用的接口让我们能够把一个lua函数注冊给C++层面的回调事件. 翻看引擎的lua绑定代码,我们能够仿照引擎中的方法来做. 值 ...
- 浏览器Console创建canvas base64 png图片
火狐中运行:console.log var canvas = document.createElement('canvas'); canvas.width =1 canvas.height =1 ca ...
- centos7 双网卡设置(先NAT和后桥接)
摘要:VMware中搭建一台虚拟机192.168.161.5(NAT转发) 首先在VM虚拟机设置里面添加一块网卡适配器 设置为桥接模式 完成后等待自动配置 此时出现多了一个ens37 和本地网段一样的 ...
- toggleClass slideToggle
$("#wrapper").toggleClass("toggled"); $("p").slideToggle(1000); demo: ...
- 最长回文子串 hihocode 1032 hdu 3068
最长回文 Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submi ...
- su su- sudo区别概述
在Linux的操作中经常会用到su 命令进行用户的切换和sudo命令获取root权限,su su- sudo三个命令经常弄混,下面简单的讲解下. 一.查看su的命令帮助信息: pipci@openSU ...
- github连接报"ssh: connect to host github.com port 22: Connection timed out"错误
1. 异常 在连接github时,执行"ssh -T git@github.com" 命令时,出现 ssh: connect to host github.com port 22: ...
- 洛谷 P1705 爱与愁过火
P1705 爱与愁过火 题目背景 (本道题目隐藏了两首歌名,找找看哪~~~) <爱与愁的故事第一弹·heartache>第三章. 爱与愁大神说这是ta的伤心指数,只不过现在好很多了,翻译只 ...
- 如何获取repeater某行第一列的值
<div> <asp:Repeater ID="Repeater1" runat="server" DataMember="Defa ...