[总结]C++ 之 向量vector
目录
常用函数:
front():返回当前vector容器中 起始元素的引用。
back():返回当前vector容器中末尾元素的引用。
begin():返回一个当前vector容器中起始元素的迭代器。
end():返回一个当前vector容器中末尾元素的迭代器。empy(): 判断向量是否为空,若是返回1,否则返回
size(): 获取向量中的元素个数
clear() //清空向量中的元素
insert : 插入
一.声明,初始化
数组是静态分配空间,分配后不可改变
vector是动态分配内存,随着元素的不断插入,按照自身的一套机制不断扩充自身的容量, vector容器的容量增长是按照容器现在容量的一倍进行增长。 先复制2倍的vector空间,再删除原来1倍的vector空间。空间复杂度增大。
也可使用数组初始化向量
<7>示例:
二.访问
1.和数组相似
2.使用迭代器
注意:
end()返回的却是末尾元素再下一个元素的迭代器(取最后一个元素的话用last()),好处是
1.判断是否到尾部简单只要!=end就行了,"<"运算在STL中是要避免的,因为计算量可能会比较大。
2.判断空区间较为简单begin()==end()。
endl; }
补充:
auto推导的类型如同
template <class T>
void f(const T&); 中T的类型一样
三.二维向量
创建的是一个"元素为向量"的向量。同样可以根据一维向量的相关特性对二维向量进行操作。
四.内存管理使用
参考:C++ vector内存管理使用解析-你真的学会vector了吗?
本文来自博客园,作者:泥烟,CSDN同名, 转载请注明原文链接:https://www.cnblogs.com/Knight02/p/15014743.html
分类:
c/c++
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY