vector

c++的vector的使用方法,创建,初始化,插入,删除等。

#include "ex_vector.h"

#include <iostream>
#include <vector>
#include <string>
using namespace std; void ex_vector01_main()
{ //#######################################################################################
//初始化vector的方法
vector<int> v1; //v1是一个空vector,它的潜在元素是int类型的,执行默认初始化
vector<int> v2(v1); //v2包含v1所有元素的副本
//这里尝试先给v1添加元素,后看看v2是什么情况
vector<int> v22 = v1; //等价于v2(v1),v2包含v1所有元素的副本
vector<float> v3(10, 11.0); //v3包含10个重复的元素,每个元素的值都是11
vector<int> v4(10); //v4包含了10个重复执行了值初始化的对象
vector<string> v5{ "a","b","cc","d" }; //v5包含了4个元素
vector<string> v55 = { "a","b","cc","d" }; //等价于v5{ "a","b","cc","d" }; //#######################################################################################
//初始化使用圆括号和花括号的区别
//使用圆括号是,提供的值是用来构造vector对象的
//使用花括号是,想用列表初始化vector对象的,初始化过程会尽可能的把花括号内的值当做是元素的初始
// 值的列表来处理,只有在无法执行列表初始化的时候才会尽可能的考虑其他初始化的方式
vector<int> va1(10); //va1有10个元素,每个值都是0
vector<int> va2{ 10 }; //va2有1个元素,该元素的值是10 vector<int> va3(10, 1); //va3有10个元素,每个的值都是1
vector<int> va4{ 10,1 };//va4有两个元素,值分别是10,1 vector<string> va5{ "hi" }; //列表初始化:va5有一个元素
//vector<string> va6("hi"); //错误,不能使用字符串字面值构建vector对象
//这种就是不使用花括号内的值来初始化对象
vector<string> va7{ 10 }; //va7有10个默认初始化的元素
vector<string> va8{ 10,"hi" }; //va8有10个值为"hi"的元素 //#######################################################################################
//向vector中添加元素
//最常见的一种方式就是先定义一个空的vector,然后当运行时在逐一添加。
vector<int> vb1(2, 100);
for (int i = 0; i < 10; i++)
{
vb1.push_back(i);//依次把整数数值添加到vb2的末尾
} if (vb1.empty())
{
cout << "vb1 is empty" << endl;
}
else
{
cout << "第一种循环方法:"<<endl;
cout << "vb1 have " << vb1.size() << " elements" << endl;
for (int i = 0; i < 10; i++)
{
cout << vb1[i] << ", ";
}
cout<<endl;
cout << "第二种循环方法:"<<endl;
for(int &i:vb1)
cout<<i<<", ";
cout<<endl;
for(auto &i:vb1)
cout<<i<<", ";
cout<<endl;
} }

更多内容详见我的个人主页:

国内主页

国外主页

C++的vector的使用方法的更多相关文章

  1. C++-二维vector初始化大小方法-备忘

    来源: C++——二维vector初始化大小方法 1.直接用初始化方法 名字为vec,大小为n*m,初始值为0的二维vector. vector<vector<)); 2.用resize( ...

  2. 实战c++中的vector系列--再谈vector的insert()方法(都是make_move_iterator惹的祸)

    之前说过了关于vector的insert()方法,把vector B的元素插入到vector A中.vector A中的结果我们可想而知,可是vector B中的元素还会怎样? 看看之前写过的程序: ...

  3. Java集合系列(二):ArrayList、LinkedList、Vector的使用方法及区别

    本篇博客主要讲解List接口的三个实现类ArrayList.LinkedList.Vector的使用方法以及三者之间的区别. 1. ArrayList使用 ArrayList是List接口最常用的实现 ...

  4. vector 初始化所有方法

    简介:vector可用于代替C中的数组,或者MFC中的CArray,从许多说明文档或者网上评论,一般一致认为应该多用vector,因为它的效率更高,而且具备很好的异常安全性.而且vector是STL推 ...

  5. vector数据查找方法

    用STL编敲代码时常常使用vector容器来存储数据.当容器中的数据有序时我们能够採取两种方式: (1) 利用<algorithm>中的find函数进行查找: (2) 折半查找. 另外也能 ...

  6. c++ vector(向量)使用方法详解(顺序访问vector的多种方式)

    来源:http://www.jb51.net/article/44231.htm 作者: 字体:[增加 减小] 类型:转载 时间:2013-12-08我要评论 vector是向量类型,它可以容纳许多类 ...

  7. C++ 中vector的使用方法(转)

    原地址:http://blog.csdn.net/duan19920101/article/details/50617190/ 在c++中,vector是一个十分有用的容器. 作用:它能够像容器一样存 ...

  8. C++——二维vector初始化大小方法

    初始化二维vector,为r*c的vector,所有值为0.1.直接用初始化方法(刚开始没想到) vector<vector<int> > newOne(r, vector&l ...

  9. C++关于容器vector的使用方法以及#ifdef #else #endif #if #ifndef 的使用

    //此处根据0还是1来判断具体使用那一段主函数 #if 1 #define WAY #endif #ifdef WAY #include <iostream> #include<st ...

随机推荐

  1. Windows Server 2019 container容器化-Docker安装

    一.启用服务器Hyper-V,Containers特性 Install-WindowsFeature -Name Hyper-V,Containers -IncludeAllSubFeature -I ...

  2. vue+iview多条联动,for循环data是函数

    问题:多条for循环出的数据二级联动for循环出多条数据,每条数据都有一个二级联动,每次下拉一级联动,二级的选项都是变化的. 思考刚开始一直想不出如何实现二级联动下拉的数据动态变化,因为之前一直都是v ...

  3. Mac下搭建react开发环境

    安装node 官网下载 https://nodejs.org/en/ 双击安装,接下来都是默认选择即可,直至安装成功 测试是否安装成功,分别输入以下命令: node -v npm -v 如下图所示,说 ...

  4. LeetCode第29场双周赛题解

    第一题 用一个新数组newSalary保存去掉最低和最高工资的工资列表,然后遍历newSalary,计算总和,除以元素个数,就得到了平均值. class Solution { public: doub ...

  5. Python之浅谈装饰器

    目录 闭包函数 装饰器 迭代器 闭包函数 就是将原先需要调用好几遍的函数和参数写入一个包内,下次调用时一起调用 def name(x): x=1 def age(): print(x) return ...

  6. 半导体质量管理_SQM 供应商质量管理

    供应链上的质量保证 SPACE的此附加组件可帮助您与全球生产现场的供应商和分包商更紧密地合作.基于电子分析证书(eCOA,电子分析证书),您可以为整个供应链实施具有约束力的质量标准,并可以对其进行验证 ...

  7. 飞越面试官(二)--JUC

    大家好!我是本号唯一官方指定没头屑的小便--怕屁林. JUC是什么东西?我相信很多经验尚浅的小伙伴部分都会为之一懵,我也是,三个字母都会读,连在一起就不知道在说什么,其实如果把它的全称写出来,“jav ...

  8. css条纹背景样式、及方格斜纹背景的实现

    一.横向条纹如下代码: background: linear-gradient(#fb3 %, #58a %) 上面代码表示整个图片的上部分20%和下部分20%是对应的纯色,只有中间的部分是渐变色.如 ...

  9. JavaGUI练习 - 正交测试用例生成小工具

    正交表生成小工具 说明 小工具的适用对象主要是测试人员,他们日常工作中手动设计大量测试用例,工作繁杂甚至还存在覆盖不全面等问题. 为了提高他们的测试效率,该小工具可以通过输入一组多因素多水平的数据,然 ...

  10. thinkphp将对象变成一维数组?

    thinkphp使用select查询出的数据为二维数组,如果想将二维数组转一维,可以使用: $x为二维数组对象 php版本要大于5.5.0 $userid_array = array_column($ ...