vector数组用法及举例

vector详解

1.调用vector的头文件

vector数组用法及举例

注意:c++编程中填写这个头文件

 

2.vector的用法

vector数组用法及举例

注意:大概来讲,vector就是一个变长数组,与a[]这种普通数组不同的是,他不用定义多长,是根据用户的用法变化的,同时它的用法及方法也与普通数组不同

 

3.vector的存取方法及特殊

vector数组用法及举例

vector数组用法及举例

vector数组用法及举例

注意:vector的存取与栈相同(即一种无盖有底的“洞”,从顶端存入,从顶端取出);

 

3.vector数据的读取及其他方法

vector数组用法及举例

 

vector数组用法及举例

注意:iterator是一种迭代器,即一种读取器,其功能类似for循环;利用iterator来输出或存取大量的数据;


 

vector优势:

大小能否变化

vector属于变长容器,即可以根据数据的插入删除重新构建容器容量,但array和数组属于定长容量。

初始化

数组不能将数组的内容拷贝给其他数组作为初始值,也不能用数组为其他数组赋值,而向量可以。

vector提供了更好的数据访问机制,即可以使用及at访问方式,使得访问更加安全。而数组只能通过下标访问,在程序的设计过程中,更容易引发访问错误。

vector提供了size和判空的获取机制,而数组只能通过遍历或者通过额外的变量记录数组的size。

vector提供了可以动态插入和删除元素的机制,而array和数组则无法做到,或者说array和数组需要完成该功能则需要自己实现完成。

深度搜索:内存中的位置

C++中数组为内置的数据类型,存放在栈中,其内存的分配和释放完全由系统自动完成;vector,存放在堆中,由STL库中程序负责内存的分配和释放,使用方便。


 

vector实例帮助理解

题目描述

小鱼最近被要求参加一个数字游戏,要求它把看到的一串数字(长度不一定,以0结束,最多不超过100个,数字不超过2^32-1),记住了然后反着念出来(表示结束的数字0就不要念出来了)。这对小鱼的那点记忆力来说实在是太难了,你也不想想小鱼的整个脑袋才多大,其中一部分还是好吃的肉!所以请你帮小鱼编程解决这个问题。

输入格式

一行内输入一串整数,以0结束,以空格间隔。

输出格式

一行内倒着输出这一串整数,以空格间隔。

输入输出样例

输入

3 65 23 5 34 1 30 0

输出

30 1 34 5 23 65 3

具体代码:

#include<iostream>
#include<vector>
using namespace std;

int main(){
    vector<int> a;
    int count=0;
    int x;
  while(cin>>x){
    if(x==0) break;
    else a.push_back(x);
  }
  for(vector<int>::iterator it=a.end()-1;it>=a.begin();it--){  //iterator迭代器输入输出
    cout<<(*it)<<" ";
  }   

    return 0;
}

 使用iterator迭代器进行迭代输入输出;

注意:vector数组由于其特殊性适用一些算法,但也不适用一些场合,所以一般使用普通的数组即可;

 

原文链接: https://www.cnblogs.com/zmz-zero/p/12260724.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍;

也有高质量的技术群,里面有嵌入式、搜广推等BAT大佬

    vector数组用法及举例

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/327128

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年3月1日 下午4:07
下一篇 2023年3月1日 下午4:08

相关推荐