容器类(list | vector | deque | set)

2022-06-08  本文已影响0人  圣明

常见容器类:

序列式容器:元素位置和插入顺序和位置有关,与元素值无关
list
deque
vector 
关联式容器:元素位置取决于元素的值
set
multiset
map
multimap

容器配接器:

Stacks
Queues
Priority Queues

迭代器

安插型迭代器(insert Iterators):
   back_inserter
   front_inserter
   inserter
流迭代器(Stream Iterators):
   isstream_iterator<string>(cin)
   isstream_iterator<string>()
逆向迭代器(Reverse Iterators)
   rbegin()
   rend()

示例

#include "iostream"
#include "list"
#include "deque"
#include "set"
#include "algorithm"
#include "vector"

using namespace std;

int main() {
    // 0 1 2 3 4 5 6 7 8 9
    list<int> coll1;
    for (int i = 0; i <= 9; i++) {
        coll1.push_back(i);
    }
    vector<int> coll2;
    // 向量不可以front_inserter:0 1 2 3 4 5 6 7 8 9 其中:front = 0;back = 9
    std::copy(coll1.begin(), coll1.end(), back_inserter(coll2));
    deque<int> coll3;
    // 9 8 7 6 5 4 3 2 1 0
    std::copy(coll1.begin(), coll1.end(), front_inserter(coll3));
    set<int> coll4;
    // 0 1 2 3 4 5 6 7 8 9
    std::copy(coll1.begin(), coll1.end(), inserter(coll4, coll4.begin()));
}
上一篇下一篇

猜你喜欢

热点阅读