当前位置: 首页 > news >正文

C++:vector容器

vector容器与array容器相似,但vector容器是动态的,可以自动扩容。

使用方法和一些注意如下:

#include<iostream>
#include<vector>
using namespace std;int main()
{vector<char> vec = { 'a','b','c','d' };vec[4] = 'e';//不能以此方法扩容vec.push_back('e');//添加///*for (int i = 0; i < vec.size(); i++)//{//	cout << vec[i] << endl;//}*/vector<char>::iterator ite = vec.begin();while (ite != vec.end()){cout << *ite << endl;ite++;}return 0;
}

vector的扩容机制

1.分配新内存

2.复制原数据

3.释放就内存

4.更新指针,将vector的指针指向新的内存。

避免内存重新配置的方法:

vector<int> vec;cout << "size:" << vec.size() << "capacity:" << vec.capacity() << endl;//size:用了多少 capacity:能用多少vec.reserve(15);//指定大小for (int i = 0; i < 20; i++){vec.push_back(i);cout << "size:" << vec.size() << "capacity:"<<vec.capacity()<<endl;}

相关文章:

  • 软考中级软件设计师——操作系统考试题型
  • 什么是“架构孤岛”?如何识别与整合?为什么现代企业在追求敏捷开发的同时,反而更容易陷入架构孤岛陷阱?
  • 网络编程概述
  • Open3D 半径滤波器
  • 使用脚本备份和还原Windows环境变量
  • 发二区利器:CNN+LSTM时序预测
  • Linux中I/O复用机制epoll
  • Android 14.0 高通平台Launcher3 中,禁止拖动图标到桌面
  • 自由开发者计划 001:创建一个用于查看 Jupyter Notebook 的谷歌浏览器插件 Jupyter Peek
  • quickbi实现关联度分析(复刻PowerBI展示)
  • 图论算法精解(Java 实现):从基础到高频面试题
  • Python学习——执行python时,键盘按下ctrl+c,退出程序
  • 磁盘分区与挂载——笔记
  • 高速串行差分信号仿真分析及技术发展挑战
  • Linux系统之----文件及缓冲区
  • 【八股战神篇】Spring高频面试题汇总
  • 对单调栈的理解
  • 4082B信号/频谱分析仪
  • 视频监控联网系统GB28181协议中设备控制流程详解
  • 【Linux 性能采集】定周期采集某进程的CPU、内存、文件描述符信息并存储到文件【2025.05.21】
  • 免费网站建设论文/石家庄seo全网营销
  • 做家具的外国网站/免费平台
  • 网站建设 业务走下坡/百度视频推广怎么收费
  • 上海手机网站建设电话咨询/自动发外链工具