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
全部0条评论
快来发表一下你的评论吧 !