C++中的vector
vector(向量)是一種序列式容器,類似于數(shù)組,但比數(shù)組更優(yōu)越。一般來說數(shù)組不能動(dòng)態(tài)拓展,因此在程序運(yùn)行的時(shí)候不是浪費(fèi)內(nèi)存,就是造成越界。而vector正好彌補(bǔ)了這個(gè)缺陷,它的特征是相當(dāng)于可拓展的數(shù)組(動(dòng)態(tài)數(shù)組),隨機(jī)訪問快,在中間插入和刪除慢,但在末端插入和刪除快。
vector的定義與初始化
使用vector時(shí),要將相應(yīng)容器的頭文件,如下圖所示代碼第2行。vector初始化方式如代碼第7行至第11行所示。代碼第14行至第36行依次驗(yàn)證了所創(chuàng)建vector的初始值。這里begin()返回vector起始指針,end()返回末尾指針,size()返回vector所包含元素的個(gè)數(shù)。


向vector末尾添加或刪除元素可借助函數(shù)push_back()和pop_back()完成。函數(shù)capacity()返回當(dāng)前分配給vector的存儲(chǔ)空間,這個(gè)值不是必須和size()返回值相等,可以大于size()返回值。同時(shí),capacity()的返回值并沒有限定vector的大小,當(dāng)需要更多空間時(shí),容器會(huì)自動(dòng)擴(kuò)展。理論上限由函數(shù)max_size()返回值決定。我們可借助如下圖所示代碼體會(huì)三者的區(qū)別。
原文標(biāo)題:在HLS中使用vector
文章出處:【微信公眾號(hào):Lauren的FPGA】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
責(zé)任編輯:haq
-
C++
+關(guān)注
關(guān)注
22文章
2123瀏覽量
77021 -
Vector
+關(guān)注
關(guān)注
3文章
98瀏覽量
9986
原文標(biāo)題:在HLS中使用vector
文章出處:【微信號(hào):Lauren_FPGA,微信公眾號(hào):FPGA技術(shù)驛站】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
PC強(qiáng)實(shí)時(shí)運(yùn)動(dòng)控制(一):C#的EtherCAT總線初始化(下)
國民技術(shù)發(fā)布N32Cube芯片配置與初始化代碼生成工具
MCU工程初始化,到底該不該交給工具?
EtherCAT總線初始化步驟
瀚海微SD NAND TF卡硬件識(shí)別與初始化類問題探討
串口通信基石:Air8000下Modbus RTU串口初始化詳解!
NVMe高速傳輸之?dāng)[脫XDMA設(shè)計(jì)33:初始化功能驗(yàn)證與分析
GraniStudio:IO初始化以及IO資源配置例程
GraniStudio:初始化例程
C++中vector的定義與初始化
評(píng)論