【C++编程】数组 vector 容器基本操作

c++容器定义、初始化、赋值 令C表示六个顺序容器类型期中之一(vector,deque,list,forward,string,array),以下详细说明定义和初始化以及赋值. 1.容器定义和初始化 (1)C c;默认构造函数,如果c是一个array,则c中元素按照默认初始化;否则c为空。 解释:默认初始化,如果c是全局变量,int 初始化为0,如果c是局部变量。那么初始化为任意整数值。string 对象全部初始化为空串子. (2)C c1(c2) ; c1初始化为c2的类型。c1 和c2必须是... 阅读详情

构造 vector 的四种方法:

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

int main()
{
   // 1. 同时展示常用的赋值操作
   vector<int> v1;
   for(int i=0; i < 10; i++)    // 赋值 0 1 2 3 4 5 6 7 8 9
   {
       v1.push_back(i);
   }
   vector<int> v11;
   v11 = v1;  // 赋值 0 1 2 3 4 5 6 7 8 9
   v11.assign(v1.begin(), v1.end());  // 赋值 0 1 2 3 4 5 6 7 8 9
   v11.assign(10, 1);  // 赋值 1 1 1 1 1 1 1 1 1 1 
   // 2. 通过区间构造
   vector<int> v2(v1.begin(), v1.end());  // 0 1 2 3 4 5 6 7 8 9
   // 3. n个element
   vector<int> v3(10, 1);  // 1 1 1 1 1 1 1 1 1 1 
   // 4. 拷贝构造
   vector<int> v4(v1);  // 0 1 2 3 4 5 6 7 8 9

   return 0; 
}

void printVector(vector<int> &v)  // 逐个元素打印
{
    for (vector<int>::iterator i = v.begin(); i<v.end(); i++)
    {
        cout << *i << endl;
    }
}

💜 数组插入和删除:push_back 、pop_back、insert、erase

vector<int> v1 = {0,1,2,3,4,5,6,7,8,9};
v1.push_back(10);  // 0 1 2 3 4 5 6 7 8 9 10  			- 尾插 10
v1.pop_back();  // 0 1 2 3 4 5 6 7 8 9 		  			- 尾删 10
v1.insert(v1.begin(), -1);  // -1 0 1 2 3 4 5 6 7 8 9   - v1.begin() 处插入 -1
v1.erase(v1.begin());  // 0 1 2 3 4 5 6 7 8 9	  		- v1.begin() 处删除 -1

💜 数组容量和大小获取:capacity,empty、 size

vector<int> v1 = {0,1,2,3,4,5,6,7,8,9};
cout << v1.capacity() << endl;  // 10,是动态扩展的
cout << v1.empty() << endl;     // 0
cout << v1.size() << endl;      // 10

💜 数组元素互换:swap

vector<int> v1 = {0,1,2,3,4,5,6,7,8,9};
vector<int> v2 = {-0,-1,-2,-3,-4,-5,-6,-7,-8,-9};
v1.swap(v2);
// v1: -0,-1,-2,-3,-4,-5,-6,-7,-8,-9
// v2: 0,1,2,3,4,5,6,7,8,9
  • vector<int>(v).swap(v) 可用来收缩容量,其中 vector<int>(v) 是一个匿名对象

💜 数组排序:sort

// 需要头文件 #include <algorithm>
vector<int> v1 = {0,1,3,2,4,8,5,6,7,9};
sort(v1.begin(), v1.end());  // 0 1 2 3 4 5 6 7 8 9 

【博客参考链接】
【黑马程序员匠心之作|C++教程从0到1入门编程,学习编程不再难】

C++ 中vector的使用方法 在 c++ 中,vector 是一个十分有用的容器。它能够像容器一样存放各种类型的对象,简单地说,vector是一个能够存放任意类型的动态数组,能够增加和压缩数据。 C++ 中数组很坑,有没有类似 Python 中 list 的数据类型呢?类似的就是 vector!vector 是同一种类型的对象的集合,每个对象都有一个对应的整数索引值。和 string 对象一样,标准库将负责管理与存储元素相关的内存。我们把 vector 称为容器,是因为它可以包含其他对象。一个容器中的所有对象都必须是同一种类型的。 一 阅读详情

相关推荐

C++ std::vector深入教程与实践

vector是C++标准模板库(STL)中的一种动态数组容器。与静态数组相比,vector能够根据元素的插入和删除自动调整其大小。它是线性数据结构,支持随机访问迭代器,且具备动态数组的所有特性,如元素的随机访问、高效的连续内存存储等。迭代器是实现为类模板的通用对象,它们指向容器中的一个元素,可以用来遍历容器,并且可以对元素进行读取和修改。在C++中,不同的容器类型可能会提供不同类型的迭代器,但基本的使用方法和操作符(如解引用和递增++)是统一的。

weixin_29476595的博客 653

C++ 打印 vector

打印 1D vector 方法一: 使用基本 for 循环 #include <iostream> #include <vector> int main() { // initial a vector std::vector<int> arrays{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; for(int i =...

木偶不哭不笑的博客 2万+

推荐系统在音乐领域的实践:网易云音乐推荐算法解析

你是否有过这样的经历?打开网易云音乐,“私人FM”里总能推到你想听的歌;“每日推荐”的歌单,往往藏着你没听过但一入耳就爱上的曲目。这些“懂你”的推荐背后,是一套复杂却精密的推荐系统在运转。问题陈述:音乐推荐的难点远超一般商品——音乐是高度主观的艺术,用户兴趣易随心情、场景变化;小众音乐的“长尾效应”显著,如何让冷门好歌被发现?传统协同过滤依赖历史行为,面对新用户/新歌曲的“冷启动”问题束手无策;而单纯的内容推荐又难以捕捉用户的隐性兴趣。核心方案:网易云音乐采用“混合推荐策略”——融合协同过滤(CF)

AI天才研究院 2087

C++中将数组转化为vector的方法

int main() { int arr[4]= {3,4,5,6}; vector &lt; int &gt; vc(arr, arr+4); for(int i = 0; i { cout&lt;&lt;vc[i]&lt;&lt;endl; } }

snoopy_ly的博客 1万+

【阅读文献笔记】FoundationStereo: Zero-Shot Stereo Matching

提出首个零样本泛化立体匹配基础模型设计 STA 模块融合单目先验提出 AHCF 模块增强代价滤波构建 100 万合成数据集 FSD + 自净化流程。

qq_46460379的博客 1257

RK3566/RK3588 NPU性能实测:用mobilenet模型快速验证你的开发板NPU是否正常工作

本文提供了RK3566/RK3588开发板NPU性能实测指南,通过MobileNet模型快速验证NPU是否正常工作。详细介绍了环境搭建、测试资源获取、编译运行及结果分析的全流程,帮助开发者高效验证神经网络加速器功能,为后续AI应用部署奠定基础。

weixin_28826521的博客 448

【C++】一文了解vector

resize函数开辟空间时,会对当前容器空间进行调整,如果新的大小大于当前大小,resize()会在末尾添加默认值(对于基本数据类型,默认为0,对于对象类型,调用默认构造函数).如果新的大小小于当前空间大小,resize()会删除多余元素。string要求最后有\0,更好兼容C接口,vector是单纯C++衍生出来的,string的接口比vector更加丰富,vector类型是可以随意定义的,而string是专门用于存放char类型的。的大小,新增的元素会被初始化,允许直接使用下标访问。

m0_73367097的博客 437

【STC8G1K08A串口使用】

STC8G1K08A串口打印“Hello world”

m0_47459564的博客 1万+

C/C++ vector详解

C/C++初始识:向量,顺序表,是一个类模板,顺序容器。

2301_77087344的博客 2528

四足机器人如何用对抗运动先验(AMP)实现复杂地形行走?Unitree Go1实战解析

本文深入解析了四足机器人Unitree Go1如何通过对抗运动先验(AMP)算法实现复杂地形行走。AMP结合模仿学习与对抗训练,使机器人仅凭本体感知就能适应未知地形。文章详细介绍了AMP的核心架构、仿真训练工程实践以及在Unitree Go1上的部署优化方案,展示了其在极端地形下的卓越性能表现。

weixin_29050513的博客 328

Oracle EBS R12 主 / 辅助分类帐(主 / 辅助帐套)落地

本文提供了Oracle EBS R12主/辅助分类帐实施的全套文档模板,包含主帐套(法定帐套)和辅助帐套的完整配置清单、科目映射规则模板、4类典型调整分录示例(存货跌价、折旧差异、往来重分类、外币折算)以及税会/IFRS案例分录。重点阐述了主/辅助帐套的配置要点、SLA子分类帐关键配置、科目映射规则(一对一、多对一、重分类等类型)以及调整分录的自动生成逻辑。文档可直接用于项目实施,包含总体架构图、科目映射矩阵表、会计规则集配置等交付物,并附有Excel版模板便于直接使用。适用于需要实现多准则并行记账、税务调

金牌架构师 386

C++中Vector 基本介绍

  在C++的学习中大家肯定都遇到过vector,之前学习的时候并没有在意,但是在牛客网刷题的时候发现大部分题中都用到了vector,但是自己并不会很好的使用所以今天就主要的来给大家分享一下vector是什么是怎么使用的。   一、向量的介绍    向量 vector 是一种对象实体, 能够容纳许多其他类型相同的元素, 因此又被称为容器。 与string相同, vector 同属于STL(Sta...

Hanani_Jia的博客 2390

自适应控制 (Adaptive Control) 算法详解及案例分析

自适应控制是一种能够在线调整控制器参数以适应系统动态变化的控制方法。其核心思想是通过实时估计系统参数或调整控制器参数,使系统在不确定性或动态变化的环境中仍能保持稳定性和性能。

闲人编程的博客 4085

C++ 向量(vector)

1.向量vector简介 向量 vector 是一种对象实体, 能够容纳许多其他类型相同的元素, 因此又被称为容器。 与string相同, vector 同属于STL(Standard Template Library, 标准模板库)中的一种自定义的数据类型, 可以广义上认为是数组的增强版。      在使用它时, 需要包含头文件 vector, #include&lt;vector&gt;  ...

lisayh的博客 8543

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

vector向量容器(顺序容器)

vector向量容器 1. 可以像数组一样对元素进行随机访问 2. 可以在尾部插入元素 3. 具有内存自动管理的功能,对于元素的插入和删除,课动态调整所占的内存空间 4. 下标是从0开始计数的

原味炒酸奶 861

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

面试高频考点之vector容器篇

1.什么是vector容器? vector是C++中STL(standard template libaray-标准模板库)的一个容器组件, vector是表示可变大小数组的序列容器,就像数组一样,vector也采用的连续存储空间来存储元素。也就是意味着可以采用下标对vector的元素进行访问,和数组一样高效。但是又不像数组,它的大小是可以动态改变的,而且它的大小会被容器自动处理。vector官方文档 2.为什么要知道vector? 标题中已经明确指出,vector容器是面试时的高频考点,如果不需要找工作

qq_43941389的博客 637

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

c++中vector容器

目录c++中vector容器一,什么是vector?二、容器特性三、基本函数实现1,构造函数2.增加函数3.删除函数4.遍历函数5.判断函数6.大小函数7.其他函数8,集合四,简单介绍 c++中vector容器 一,什么是vector? 向量(Vector)是一个封装了动态大小数组的顺序容器(Sequence Container)。跟任意其它类型容器一样,它能够存放各种类型的对象。可以简单的认为,向量是一个能够存放任意类型的动态数组。 二、容器特性 1.顺序序列 顺序容器中的元素按照严格的线性顺序排序。可以

keel1112的博客 277

C++vector模板类(序列容器)功能总结

向量(Vector)是一个封装了动态大小数组的顺序容器(Sequence Container)。跟任意其它类型容器一样,它能够存放各种类型的对象。可以简单的认为,向量是一个能够存放任意类型的动态数组。 一,特点 自动内存管理 随机访问元素 在尾部插入或删除元素,固定时间–O(1) 在头部插入和删除元素,线性时间—O(n) 可反转容器(rbegin(),rend()) 二,基本函数实现 1.构造函数 vector():创建一个空vector vector(int nSize):创建一个vector,元素个

DayDayUp 846

c++ vector容器

一、什么是vector? vector(向量)是一个封装了动态大小数组的顺序容器。 二、基本函数实现 头文件 #include<vector> 创建vector对象: vector<int> a; 尾部插入数字: a.push_back(num); 访问指定位置元素: a[0] 向量大小 a.size() 清空 a.clear() ...

ososod的博客 114

vector不定长数组

看书的时候第n次见到vector了,一时兴起:既然这么好用就掌握它吧。 看书看别人的博客发现原理并不复杂。并且!居然支持任意位置插入!!一直以来无限头疼的问题,唯有二叉查找树--平衡树能解决的艰难的问题居然被STL封装好了! 立刻把之前树状数组折腾了好久的题拿出来用vector做。 五分钟搞定!!! 一.向量 向量是一种对象实体,能够容纳许多类型相同的元素,因...

weixin_30457551的博客 137

【C++】vector 的介绍和使用

带你了解vector和熟悉vector常见的函数接口!!!

joy.728的博客 1334

容器vector基本用法

#include <iostream> #include <vector> using namespace std; int main(){ vector<int> v{1,2,3,4,5,6,7,8}; for(auto &i : v){ i *= i; } for(int i : v){ cout<< i << endl; } for(int i

Lyuwalle的博客 235

C++之STL容器

对容器进行默认初始化的构造函数,常有多个,用于提供不同的容器初始化方法。如果第一个容器小于等于第二个容器,返回true。如果第一个容器大于等于第二个容器,返回true。向量,从后面快速插入和删除,直接访问任何元素。如果第一个容器小于第二个容器,返回true。如果第一个容器大于第二个容器,返回true。用于将容器初始化为同类型的现有容器的副本。判断容器是否为空,为空返回true。将一个容器赋给另一个同类容器。一个键只对应一个值得映射。执行容器销毁时的清理工作。返回容器中当前元素的个数。交换两个容器中的元素。

陈小陈的博客 429

STL容器: 方法接口--vector数组

关于STL不同容器的方法接口总结

qq_46785243的博客 544

C++ Vector 使用说明

一、向量的介绍     向量 vector 是一种对象实体, 能够容纳许多其他类型相同的元素, 因此又被称为容器。 与string相同, vector 同属于STL(Standard Template Library, 标准模板库)中的一种自定义的数据类型, 可以广义上认为是数组的增强版。          在使用它时, 需要包含头文件 vector, #include&lt;vector&gt;...

无痕眼泪的博客 9万+
上一篇: 【C++编程】双端数组 deque 容器基本操作
下一篇: 【C++编程】栈 stack 容器基本操作
CODE_RabbitV
博客等级 码龄7年 2930粉丝 218原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值