C++常用容器:string,vector,deuqe,stack,list,set,map以及他們的常用api

string s = "abc";

cout<<s.at(10)<<endl;//[]訪問越界會掛掉,at會拋出異常

vector常用API

 

 

//逆序遍歷
void test(){
    vvector<int> v;
    for(int i = 0; i < 10; i++)
        v.push_back(i);
    for(vectro<int>::reverse_iterator it = v.rbegin(); it != v.rend(); i++)
        cout<<*it<<" ";
    cout<<endl;
}

vector單向開口,deque雙向開口

 

 

stack沒有迭代器

queue

 

 

list每插入或者刪除一個元素,就配置或者釋放一個元素的空間,插入刪除都是常數時間

list是循環的雙向鏈表

list不向vector可以用普通普通指針作爲迭代器,提供的是BidirectionalIterators,list迭代器不支持隨機訪問

swap交換

reverse倒序

remove可以刪除非自定義的數據類型

這裏要加const,不然認爲你可以改掉p而報錯

 

L.remove(p1);

set中不允許兩個元素有相同的值,關聯式容器,自動排序

multiset允許重複

對組pair

map容器

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章