C++的vector的使用方法
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的使用方法的更多相关文章
- C++-二维vector初始化大小方法-备忘
来源: C++——二维vector初始化大小方法 1.直接用初始化方法 名字为vec,大小为n*m,初始值为0的二维vector. vector<vector<)); 2.用resize( ...
- 实战c++中的vector系列--再谈vector的insert()方法(都是make_move_iterator惹的祸)
之前说过了关于vector的insert()方法,把vector B的元素插入到vector A中.vector A中的结果我们可想而知,可是vector B中的元素还会怎样? 看看之前写过的程序: ...
- Java集合系列(二):ArrayList、LinkedList、Vector的使用方法及区别
本篇博客主要讲解List接口的三个实现类ArrayList.LinkedList.Vector的使用方法以及三者之间的区别. 1. ArrayList使用 ArrayList是List接口最常用的实现 ...
- vector 初始化所有方法
简介:vector可用于代替C中的数组,或者MFC中的CArray,从许多说明文档或者网上评论,一般一致认为应该多用vector,因为它的效率更高,而且具备很好的异常安全性.而且vector是STL推 ...
- vector数据查找方法
用STL编敲代码时常常使用vector容器来存储数据.当容器中的数据有序时我们能够採取两种方式: (1) 利用<algorithm>中的find函数进行查找: (2) 折半查找. 另外也能 ...
- c++ vector(向量)使用方法详解(顺序访问vector的多种方式)
来源:http://www.jb51.net/article/44231.htm 作者: 字体:[增加 减小] 类型:转载 时间:2013-12-08我要评论 vector是向量类型,它可以容纳许多类 ...
- C++ 中vector的使用方法(转)
原地址:http://blog.csdn.net/duan19920101/article/details/50617190/ 在c++中,vector是一个十分有用的容器. 作用:它能够像容器一样存 ...
- C++——二维vector初始化大小方法
初始化二维vector,为r*c的vector,所有值为0.1.直接用初始化方法(刚开始没想到) vector<vector<int> > newOne(r, vector&l ...
- C++关于容器vector的使用方法以及#ifdef #else #endif #if #ifndef 的使用
//此处根据0还是1来判断具体使用那一段主函数 #if 1 #define WAY #endif #ifdef WAY #include <iostream> #include<st ...
随机推荐
- Python实用笔记 (5)使用dictionary和set
dictionary 通过键值存储,具有极快的查找速度,但占用空间比list大很多 举个例子,假设要根据同学的名字查找对应的成绩,如果用list实现,需要两个list: names = ['Micha ...
- 错误C2280 Union:尝试引用已删除的函数
在编写Union共用体类型的时候,写了如下代码,在第5行出现错误: #include <iostream> #include <string> using namespace ...
- 半导体质量管理(LineWorks)_SPACE(统计过程分析和控制环境)
LineWorks作为SEMI的质量管理,可为半导体制造商提供对实施标准,产品质量,质量和指标验证的全面控制.有许多附加模块和SPACE-Chart插件,可根据个人需求进行灵活调整. 三个主要特征是: ...
- CSS选择器整理以及优先级介绍
一.基础选择器 选择器 名称 描述 兼容性 * 通配选择器 选择所有的元素 ie6+ E 元素选择器 选择指定的元素 ie6+ #idName id选择器 选择id属性等于idName的元素 ie6+ ...
- RSS阅读器推荐
http://www.feeddemon.com/ Windows,Free (完)
- js element类型的属性和方法整理
Element类型 除了Document类型,我们Web编程中最常用的类型就是Element类型啦.Element 类型用于表现XML或HTML元素,提供了对元素标签名,子节点,特性的访问 特征 no ...
- 平常我们是如何区分css中class和id之间有什么区别的?
我们平常在用DIV+CSS制作html网页页面时,常会用到class 和id来选择调用CSS样式属性.对学习CSS的新手来说class和id可能比较模糊,同时不知道什么时候该用class,什么时候又用 ...
- 最小的K个数(剑指offer-29)
题目描述 输入n个整数,找出其中最小的K个数.例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4. 题目解析 大小为 K 的最小堆 复杂度:O(NlogK) + O(K ...
- APP开发---Windows查看端口是否被占用
前言:在后台设计的过程中,当你把后台的代码编辑好之后经常会发现,上传jar包之后,却出现了错误,错误结果显示端口被占用,下面就是如何查看Windows端口是否被占用的方法总结 ------------ ...
- VS2017未能添加对"System.Drawing.dll"的引用
问题: 解决方法:在程序集中找到System.Drawing.dll然后勾选引用.