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 ...
随机推荐
- 【转】 我的java web登录RSA加密
[转] 我的java web登录RSA加密 之前一直没关注过web应用登录密码加密的问题,这两天用appscan扫描应用,最严重的问题就是这个了,提示我明文发送密码.这个的确很不安全,以前也大概想过, ...
- 网络载入数据和解析JSON格式数据案例之空气质量监測应用
一.创建一个新的项目 activity_main.xml <LinearLayout xmlns:android="http://schemas.android.com/apk/res ...
- UnrealEngine4编码风格的思考
第一次拿到UE4源码,扫了一遍.各种宏定义,各种模板,各种类层次.杂乱无章. 后来慢慢明确其规律: UE4的编码风格是在匈牙利命名法的基础下做了改进,使其更适用游戏引擎业务(业务特点:数据可视编辑.脚 ...
- 怎样给UINavigationBar加入button?
Mads Mobæk:给UINavigationBar加入button的演示样例代码 1 2 3 4 5 6 7 8 UIBarButtonItem *rightButton = [[UIBarBut ...
- C++ 鼠标模拟程序
关于鼠标模拟程序应用不算少见.在游戏外挂或者一些操作频繁位置确定的程序上应用往往有奇效. 比較旧的API是mouse_event,本人一開始也用这个在搞,只是后来才看到新的API在操作上更加统一.稍作 ...
- 线程池系列二:ThreadPoolExecutor讲解
一.简介 1)线程池类为 java.util.concurrent.ThreadPoolExecutor,常用构造方法为: ThreadPoolExecutor(int corePoolSize, i ...
- 打开文件对话框在xp和win7上的实现文件任意多选
作者:朱金灿 来源:http://blog.csdn.net/clever101 在xp系统上进行文件多选,实际上其文件字符串数组的缓冲区是有限,并不能支持选择任意多个文件,为此以前我还写过一篇文章: ...
- javascript 基础篇 随课笔记
!DOCTYPE HTML><html><head><meta name="content-type" content="text/h ...
- Django_模板HTML
- 安装Apache PHP MySQL PHPMyAdmin
视频教程:https://www.youtube.com/watch?v=FJC2iGt_2bc,Youtube看不了的FQ吧-3- 本人参考这篇文章:http://blog.csdn.net/kno ...