关于vector的一些简单的使用与操作(正在学习中...)

一,vector是撒?(以下均为个人理解,如有错误,尽情指正)

    我们可以认为vector是一个可以不用确定内存为多大的数组即vector-->a[n](n为任意正整数);更正规的说法请大家问度娘;

二,

  1,定义:

    vector包含在头文件“vector”中,想使用就需先声明头文件;

    定义格式:

      1)vector< 类型 > 名称 ;

      2)vector< 类型 > 名称(最大容量);

      3)vector< 类型 > 名称(最大容量,初始所有值);

  

 1 #include<iostream>
 2 #include<vector>
 3
 4 using namespace std;
 5
 6 int main()
 7 {
 8     vector<int> ve1;
 9
10     vector<int> ve2(100);
11
12     vector<int> ve3(3,0);
13
14     return 0;
15 }

  2,数据存入:

    使用:push_back(x)  x代表要存入的数据;

 1 #include<iostream>
 2 #include<vector>
 3
 4 using namespace std;
 5
 6 int main()
 7 {
 8     vector<int> ve1;
 9     ve1.push_back(2);//只存入了一个数据2;
10
11     return 0;
12 }

  3,数据的输出:

    1)与数组相似的输出;

    2)利用迭代器;(好吧我承认迭代器到底是啥我不太懂!!!)

 1 #include<iostream>
 2 #include<vector>
 3
 4 using namespace std;
 5
 6 int main()
 7 {
 8     int i;
 9     vector<int> ve1;
10     vector<int>::iterator it;//迭代器的定义;
11
12     for(i=0;i<4;i++)
13     {
14         ve1.push_back(i);
15     }
16 //方式 1)
17     for(i=0;i<4;i++)
18     {
19         cout<<ve1[i]<<‘ ‘;
20     }
21     cout<<endl;
22 //方式 2)
23     for(it=ve1.begin();it<ve1.end();it++)//begin()与end()后面会说;
24     {
25         cout<<*it<<‘ ‘;
26     }
27       cout<<endl;
28
29     return 0;
30 }

未完待续...

    

时间: 2024-10-24 11:15:43

关于vector的一些简单的使用与操作(正在学习中...)的相关文章

u-boot分析(十一)----MMU简单分析|u-boot分析大结局|学习规划

u-boot分析(十一) 通过前面十篇博文,我们已经完成了对BL1阶段的分析,通过这些分析相信我们对u-boot已经有了一个比较深入的认识,在BL2阶段大部分是对外设的初始化,并且有的我们已经分析过,在这篇博文我打算对BL1阶段没有分析到的重要外设进行简单分析,并结束对u-boot的分析,同时对后面自己的博文进行简单的规划,希望有兴趣的朋友跟我一块学习和研究嵌入式. 今天我们会分析到以下内容: 1.      MMU分析(内容出自我以前的博客) 2.      裸机开发总结 3.      后期

c++ STL中的vector与list为什么没有提供find操作?

map里有,set里也有,vector,list没有,太不公平了吧. 其实应该考虑为什么map,set里有find操作. include<algorithm>里有通用的find操作,通用的find内部是从begin到end进行一次遍历,复杂度是O(n). 通过iterator从begin到end遍历map与set时,得到的结果是按key排序的结果,而不是插入时的顺序(所以这两个容器没有push_back操作), 其实,insert到map与set中的元素会被组织到一颗红黑树上,红黑树是一颗平衡

JSP简单练习-EL表达式操作JavaBean

/* * javaBean代码 */ package bean; public class Box { double length; double width; double height; public Box() { length=0; width=0; height=0; } public double getLength() { return length; } public void setLength(double length) { this.length = length; }

C++中的数组array和vector,lambda表达式,C字符串加操作,C++中新类型数组(数组缓存),多元数组,new缓冲

 使用C++风格的数组,不需要管理内存. array要注意不要溢出,因为它是栈上开辟内存. array适用于任何类型 #include<iostream> #include<array> #include<vector>   //C++的标准库 #include<string>   //C++字符串 #include <stdlib.h> using  std::array; //静态数组,栈上 using std::vector; //动态

【JavaScript】使用setInterval()函数作简单的轮询操作

轮询(Polling)是一种CPU决策怎样提供周边设备服务的方式,又称"程控输出入"(Programmed I/O). 轮询法的概念是.由CPU定时发出询问.依序询问每个周边设备是否须要其服务,有即给予服务,服务结束后再问下一个周边,接着不断周而复始. 轮询法实作easy.但效率偏低. 在JavaScript使用setInterval函数作简单的轮询操作,能够随时判定某一个參数值,但不用刷新页面.即不用在页头增加<META HTTP-EQUIV="Refresh&quo

几个简单的文件&目录操作函数

一,检测目录是否为空 function isEmptyDir($path){ $handle=opendir($path);----打开路径 while (($item=readdir($handle))!==false){----判断文件名不为假 //循环出$item,如果不是.跟..,那么在if条件里就为真,否则为(空)假 if ($item!="."&&$item!=".."){ return false; } } closedir($hand

安卓开发之简单的短信操作模块

最近做了一个简单的短信操作模块,比较实用小巧.主要功能是可以发送短信(包括短信发送状态的提示),储存短信(可以用于短信列表显示等等),短信的储存可以用SQLite,不过觉得也就几十条上百条短信,用SQLite未免大材小用,还麻烦,于是决定用SharePreference结合对象序列化来做这个模块. 首先是短信实体类,为了复用,做成抽象类,再具体项目中使用只要继承该抽象类即可: public abstract class Message implements Serializable{ priva

一个用python简单的封装了aria2的jsonrpc中adduri的脚本

aria2是一个十分牛逼的下载神器,有时候项目需要一个很牛逼的下载中间件的话,aria2是一个不错的选择.其中支持jsonrpc和websocket的特性尤其诱人.但是python用起来还是有点不爽,所以简单封装一下aria2的jsonrpc. 所以,用python简单的封装了aria2的jsonrpc中adduri的脚本. 使用起来非常简单,仅需要三行代码. from pyaria2 import Jsonrpc jsonrpc = Jsonrpc('localhost', 6800) res

Asp.net Core 2.1使用 EF Core 简单增删改查操作数据库

Asp.net Core 2.1使用 EF Core 简单增删改查操作数据库 大概步骤如下5步: 1.创建项目(Asp.net Core 2.1项目) 2.项目使用EF Core 3.建立实体 4.生成迁移文件(生成数据库) 5.使用VS工具生成视图.控制器代码 示例代码下载  https://github.com/ZhMartincheng/NetCoreDemo.git 1.创建项目(Asp.net Core 2.1项目) 选择.net core 版本2.1 基础项目创建成功 2.项目使用E