0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

C++中vector的定义与初始化

FPGA技术驿站 来源:Lauren的FPGA 作者:Lauren的FPGA 2021-02-02 16:41 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

C++中的vector

vector(向量)是一种序列式容器,类似于数组,但比数组更优越。一般来说数组不能动态拓展,因此在程序运行的时候不是浪费内存,就是造成越界。而vector正好弥补了这个缺陷,它的特征是相当于可拓展的数组(动态数组),随机访问快,在中间插入和删除慢,但在末端插入和删除快。

vector的定义与初始化

使用vector时,要将相应容器的头文件,如下图所示代码第2行。vector初始化方式如代码第7行至第11行所示。代码第14行至第36行依次验证了所创建vector的初始值。这里begin()返回vector起始指针,end()返回末尾指针,size()返回vector所包含元素的个数。

56516bb4-5fc8-11eb-8b86-12bb97331649.png

57b9a174-5fc8-11eb-8b86-12bb97331649.png

向vector末尾添加或删除元素可借助函数push_back()和pop_back()完成。函数capacity()返回当前分配给vector的存储空间,这个值不是必须和size()返回值相等,可以大于size()返回值。同时,capacity()的返回值并没有限定vector的大小,当需要更多空间时,容器会自动扩展。理论上限由函数max_size()返回值决定。我们可借助如下图所示代码体会三者的区别。

原文标题:在HLS中使用vector

文章出处:【微信公众号:Lauren的FPGA】欢迎添加关注!文章转载请注明出处。

责任编辑:haq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • C++
    C++
    +关注

    关注

    22

    文章

    2139

    浏览量

    77502
  • Vector
    +关注

    关注

    3

    文章

    108

    浏览量

    10122

原文标题:在HLS中使用vector

文章出处:【微信号:Lauren_FPGA,微信公众号:FPGA技术驿站】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    Noinit RAM 部分 KW45初始化有什么原因

    “startup_KW45B41Z83.c的 ResetISR 执行某些 RAM 部分的初始化。通过这种方式,我的区域内存的变量被重置了,尽管它们是用“no_init”关键字声明
    发表于 04-29 06:57

    RT1176 bootROM启动设备初始化失败的原因?如何解决?

    ] = 0x0000000c 0x0901f303:启动设备初始化失败 数据[0] = 0x00000004, boot type -> Manufacture Boot data[1
    发表于 04-27 06:23

    MPC5777C FCCU初始化这些寄存器时是否会导致异常

    你好 我目前正在将 FCCU 与 MPC5777C一起使用。 初始化FCCU时,重置NCFS_CFG[0]和NCFS_CFG[1]后,如果将NCFS_CFG[2]初始化为0x0000,则会发生异常
    发表于 04-15 09:03

    ELF-RV112B RKNN模型加载与运行时初始化

    ELF-RV112B RKNN模型加载与运行时初始化
    的头像 发表于 04-03 16:08 249次阅读
    ELF-RV112B RKNN模型加载与运行时<b class='flag-5'>初始化</b>

    PC强实时运动控制(一):C#的EtherCAT总线初始化(下)

    通过使用配置工具导出ZAR文件进行EtherCAT总线初始化
    的头像 发表于 02-05 10:00 2864次阅读
    PC强实时运动控制(一):<b class='flag-5'>C</b>#的EtherCAT总线<b class='flag-5'>初始化</b>(下)

    国民技术发布N32Cube芯片配置与初始化代码生成工具

    1月30日,国民技术(NSING)正式发布N32Cube——芯片配置与初始化代码生成工具,让时钟、引脚与外设的配置一目了然、轻松上手!
    的头像 发表于 02-02 15:26 1128次阅读
    国民技术发布N32Cube芯片配置与<b class='flag-5'>初始化</b>代码生成工具

    MCU工程初始化,到底该不该交给工具?

    初始化 MCU特殊外设或硬件约束 工程验证和调试 结论 交给工具并不意味着放弃控制 而是让工程师从重复操作解放出来 专注于不可自动的高价值工作 审核编辑 黄宇
    的头像 发表于 01-29 10:18 311次阅读
    MCU工程<b class='flag-5'>初始化</b>,到底该不该交给工具?

    EtherCAT总线初始化步骤

    EtherCAT(Ethernet for Control Automation Technology)是一种高性能的工业以太网通信协议,广泛应用于工业自动领域。其初始化过程是确保系统稳定运行
    的头像 发表于 12-22 10:10 1168次阅读
    EtherCAT总线<b class='flag-5'>初始化</b>步骤

    瀚海微SD NAND TF卡硬件识别与初始化类问题探讨

    在瀚海微SD NAND/TF卡的实际应用,硬件识别与初始化是保障设备正常运行的首要环节,该环节出现故障会直接导致存储卡无法投入使用,尤其在工业控制、车载设备等关键场景,可能引发设备停机、数据丢失
    的头像 发表于 11-18 09:58 929次阅读
    瀚海微SD NAND  TF卡硬件识别与<b class='flag-5'>初始化</b>类问题探讨

    串口通信基石:Air8000下Modbus RTU串口初始化详解!

    串口初始化是Modbus RTU通信稳定可靠的关键起点。本篇深入剖析Air8000开发板串口参数配置、初始化代码实现及调试要点,结合master_rtu示例,分享实际操作的经验与避坑指南,让您
    的头像 发表于 10-28 16:33 1864次阅读
    串口通信基石:Air8000下Modbus RTU串口<b class='flag-5'>初始化</b>详解!

    GraniStudio:IO初始化以及IO资源配置例程

    1.文件运行 导入工程 双击运行桌面GraniStudio.exe。 通过引导界面导入IO初始化以及IO资源配置例程,点击导入按钮。 打开IO初始化以及IO资源配置例程所在路径,选中IO初始化以及
    的头像 发表于 08-22 17:34 1145次阅读
    GraniStudio:IO<b class='flag-5'>初始化</b>以及IO资源配置例程

    GraniStudio:初始化例程

    1.文件运行 导入工程 双击运行桌面GraniStudio.exe。 通过引导界面导入初始化例程,点击导入按钮。 打开初始化例程所在路径,选中初始化.gsp文件,点击打开,完成导入。 2.功能
    的头像 发表于 08-22 16:45 1126次阅读
    GraniStudio:<b class='flag-5'>初始化</b>例程

    MCU外设初始化:为什么参数配置必须优先于使能

    在微控制器领域,初始化参数配置阶段至关重要。此时,虽无电源驱动,但微控制器在使能信号到来前,借初始化参数配置这一精细步骤,开启关键准备进程。初始化参数配置如同物理坐标锚定、逻辑指令部署、内在秩序预设
    的头像 发表于 08-13 10:38 1063次阅读

    定义IO初始化结构体

    由上述IOPORT相关功能的枚举类型我们可以知道,在对IOPORT模块进行初始化时需要根据情况配置它们。因此我们定义一个IOPORT初始化的结构体类型IOPORT_Init_t,它的成员包括了由上述所有枚举类型所声明的变量,因此
    的头像 发表于 07-16 16:26 1684次阅读

    IM 系列设备过载保护机制下界面初始化中断的底层逻辑与解决方案

    一、过载保护机制与界面初始化的关联基础 IM 系列设备的过载保护机制是保障设备安全运行的核心功能,其通过传感器实时采集设备运行参数,如电流、电压、温度、系统资源占用率等。一旦这些参数超出预设阈值
    的头像 发表于 06-27 09:58 763次阅读