C++ vector || 各种软件
// 为什么写这个呢
// 因为暑研期间,在做 BEPCII 加速器数据的物理分析
// 然后分析程序是 C++ 写的,很多地方都用到动态数组
// 这玩意没学过 所以稍微整理学习一下
// 虽然名字叫vector,但是其应用多为数组
// 笔者一开始把分析程序中的 vector 理解为物理上的矢量,造成很大的困惑

C++ vector 可以看作一种动态数组,是标准模板库 (STL) 中常用的类模板,有点像 python 里面的 list 或者 ndarray。
具体使用,众所周知就和类模板的用法一样。
甚至,可以进行套娃,也就是这个vector类模板的实例还是个vector:
用 assign 函数可以直接指定向量的内容:
直接用 [ ] 可以访问 vector 的内容:
末端添加/删除元素用 push_back 和 pop_back:
用 clear 清除所有内容:
vector 类模板中还有一个常用的概念叫 iterator,即迭代器。vector的成员函数 begin() 和 end() 返回的类型就是 iterator。
iterator的用法:
insert 和 erase 成员函数可以在特定位置插入、删除元素,且需要 iterator 作为指定位置的实参。
以上就是vector类的常用用法。