STL-vector

  

vector<int> a; 

1

   迭代器(iterator):相当于一种指针,是容器中一个元素的地址,(*迭代器才会指向具体元素)。

  a.begin() 返回vector中首个元素的迭代器

  a.end() 返回vector中末尾元素向后一位的迭代器

  vector<int>::iterator i;
  for(i=a.begin();i!=a.end();i++)
    printf("%d ",*i);printf("
");

2
    insert: insert(x,y) x是迭代器 y是值
    在x对应的元素前插入值为y的元素 

 scanf("%d",&x);
  a.insert(a.begin(),x);
  for(int i=0;i<a.size();i++)
    printf("%d ",a[i]);printf("
");

3
    erase:
    erase(x):删除x对应的元素
    erase(x,y):删除区间[x,y)内的元素
    x,y 是迭代器

scanf("%d%d",&x,&y);
  a.erase(a.begin()+x-1);
  for(int i=0;i<a.size();i++)
    printf("%d ",a[i]);printf("
");

4

    clear: 清空vector
    然而,clear之后,元素并没有被删除,空间也没有释放
    clear函数只是修改了a.size()

5

    sort(x,y)对于区间[x,y)实现了排序 同样,它也可以用于vector
    类似地,reverse(x,y)对区间[x,y)实现了翻转 它同样能够作用在vector中

未完待续 remove和erase!!!

光伴随的阴影
原文地址:https://www.cnblogs.com/forward777/p/10086949.html