C++ vector || 各種軟件
// 為什么寫這個呢
// 因為暑研期間,在做 BEPCII 加速器數(shù)據(jù)的物理分析
// 然后分析程序是 C++ 寫的,很多地方都用到動態(tài)數(shù)組
// 這玩意沒學(xué)過 所以稍微整理學(xué)習(xí)一下
// 雖然名字叫vector,但是其應(yīng)用多為數(shù)組
// 筆者一開始把分析程序中的 vector 理解為物理上的矢量,造成很大的困惑

C++ vector 可以看作一種動態(tài)數(shù)組,是標(biāo)準(zhǔn)模板庫 (STL) 中常用的類模板,有點像 python 里面的 list 或者 ndarray。
具體使用,眾所周知就和類模板的用法一樣。
甚至,可以進行套娃,也就是這個vector類模板的實例還是個vector:
用 assign 函數(shù)可以直接指定向量的內(nèi)容:
直接用 [ ] 可以訪問 vector 的內(nèi)容:
末端添加/刪除元素用 push_back 和 pop_back:
用 clear 清除所有內(nèi)容:
vector 類模板中還有一個常用的概念叫 iterator,即迭代器。vector的成員函數(shù) begin() 和 end() 返回的類型就是 iterator。
iterator的用法:
insert 和 erase 成員函數(shù)可以在特定位置插入、刪除元素,且需要 iterator 作為指定位置的實參。
以上就是vector類的常用用法。
標(biāo)簽: