OIC++STL 不定长数组 vector

Posted nowonder

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了OIC++STL 不定长数组 vector相关的知识,希望对你有一定的参考价值。

Vector 本来是向量的意思,只不过在用法上类似于一个不限长度的数组。

定义语法:vector<数据类型> 名称;

一、头文件:<vector>  (bits/stdc++请忽略)

二、常用方法:

  a.size();  //读取大小

  a.resize():  //改变大小

  a.push_back();  //向尾部添加元素

  a.pop_back();  //删除最后一个元素

  a.clear();  //清空

  a.empty():  //返回是否为空

三、遍历

  STL的数据类型几乎(也许是全部)使用迭代器遍历。

  vector<int>::iterator it = a.begin();  //创建一个vector类型的迭代器(类似于指针)指向a的首地址

  在for中写就是:

  for (vector<int>::iterator it = a.begin(); it != a.end();it++)

  然后就可以使用*it来访问指向的地址的值了。

四、其他

  插入元素:    vec.insert(vec.begin()+i,a);  在第i+1个元素前面插入a;  (也就是说这个a就是i+1的位置)
  删除元素:    vec.erase(vec.begin()+2);  删除第3个元素
  vec.erase(vec.begin()+i,vec.end()+j);  删除区间[i,j-1];区间从0开始  (这个争议比较大,保留疑惑,正常不用)

待补充…………

以上是关于OIC++STL 不定长数组 vector的主要内容,如果未能解决你的问题,请参考以下文章

STL map vector(不定长数组)

STL初步不定长数组:vector + 集合:set + 映射:map

常用的C++ STL

STL——vector

C语言格式化输入不定长数组

不定长哈夫曼树