C++中的vector
vector(向量)是一种序列式容器,类似于数组,但比数组更优越。一般来说数组不能动态拓展,因此在程序运行的时候不是浪费内存,就是造成越界。而vector正好弥补了这个缺陷,它的特征是相当于可拓展的数组(动态数组),随机访问快,在中间插入和删除慢,但在末端插入和删除快。
vector的定义与初始化
使用vector时,要将相应容器的头文件,如下图所示代码第2行。vector初始化方式如代码第7行至第11行所示。代码第14行至第36行依次验证了所创建vector的初始值。这里begin()返回vector起始指针,end()返回末尾指针,size()返回vector所包含元素的个数。


向vector末尾添加或删除元素可借助函数push_back()和pop_back()完成。函数capacity()返回当前分配给vector的存储空间,这个值不是必须和size()返回值相等,可以大于size()返回值。同时,capacity()的返回值并没有限定vector的大小,当需要更多空间时,容器会自动扩展。理论上限由函数max_size()返回值决定。我们可借助如下图所示代码体会三者的区别。
原文标题:在HLS中使用vector
文章出处:【微信公众号:Lauren的FPGA】欢迎添加关注!文章转载请注明出处。
责任编辑:haq
-
C++
+关注
关注
22文章
2139浏览量
77502 -
Vector
+关注
关注
3文章
108浏览量
10122
原文标题:在HLS中使用vector
文章出处:【微信号:Lauren_FPGA,微信公众号:FPGA技术驿站】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
Noinit RAM 部分 KW45初始化有什么原因
RT1176 bootROM启动设备初始化失败的原因?如何解决?
MPC5777C FCCU初始化这些寄存器时是否会导致异常
MCU工程初始化,到底该不该交给工具?
EtherCAT总线初始化步骤
瀚海微SD NAND TF卡硬件识别与初始化类问题探讨
串口通信基石:Air8000下Modbus RTU串口初始化详解!
GraniStudio:IO初始化以及IO资源配置例程
GraniStudio:初始化例程
C++中vector的定义与初始化
评论