vector的基本操作

http://blog.csdn.net/google19890102/article/details/51701144

1.vector對象的定義和初始化:

1)定義空的vector

vector<T> v;

2) 定義一個vector的副本

vector<T> v1(v);
3) 定義並初始化

vector<T> v2(n, i);
4) 定義並指定初始長度

vector<T> v3(n);

2.vector的基本操作

1) 插入

①在尾部添加元素,使用push_back()函數

②在指定位置插入元素,使用insert()函數

insert(p, t);
//在迭代器p之前插入值爲t的元素

2) 刪除

①使用erase()方法刪除指定元素

erase(p);
//刪除迭代器p所指向的元素

vector<int>::iterator it;
for(it = v.begin(); it != v.end();  ) {
    if(*it == 1) {
        v.erase(it++);
    } 
    else it++;
}
//不能用it<v.end(),只能用!=
//for循環不要寫it++
//刪除vector中值爲1的元素,注意一定是it++,不是++it
//刪除之後,原來那個it就失效了,需要向後移一個,
//否則for循環裏面判斷就會崩潰
②使用clear()方法清空所有元素

③使用pop_back()方法刪除末尾元素

3)遍歷

①通過下標

vector<int>::size_type ix;
for (ix = 0; ix != v.size(); ix ++){
    printf("%d\t", v[ix]);
}

②利用迭代器

vector<int>::iterator it;
for (it = v.begin(); it != v.end(); it ++){
    printf("%d\t", *it);
}
3.其他操作

size() 返回vector的大小












發佈了40 篇原創文章 · 獲贊 6 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章