6.deque

 1 #include <iostream>
 2 #include <deque>
 3 #include <algorithm>
 4 using namespace std;
 5 //序列容器的模板类,可对线性排列中指定类型的元素进行排序,并且和矢量一样,
 6 //也允许快速随机访问任何元素和在容器后面高效插入和删除。
 7 //deque(双端队列),内存实体是分块数据类型,在堆上(优秀与vector与list)
 8 //能快速地增删查改
 9 
10 void main()
11 {
12     deque<int> my{ 1,2,3,4,5,6,7,8,9 };
13 
14     cout << "最大容量" << my.max_size() << endl;
15     cout << "容量" << my.size() << endl;
16     cout << "第一个" << my.front() << endl;
17     cout << "最后一个" << my.back() << endl;
18 
19     ////尾部添加
20     //my.push_back(10);
21     ////头部添加
22     //my.push_front(101);
23     ////任意位置删除或者插入
24     //my.insert(my.begin() + 5, 199);
25     ////删除头部尾部
26     //my.pop_back();
27     //my.pop_front();
28     ////清空
29     //my.clear();
30     ////随机位置删除
31     //my.erase(my.begin());
32     //for_each(my.begin(), my.end(), [](int x) {cout << x << endl; });
33 
34     //常量迭代器
35     for (auto cb = my.cbegin(), ce = my.cend(); cb != ce; cb++)
36     {
37         cout << typeid(cb).name() << endl;
38         cout << *cb << endl;
39     }
40 
41     //对[]操作符做了重载
42     for (int i = 0; i < my.size(); i++)
43     {
44         cout << my[i] << endl;
45     }
46     cin.get();
47 }

 

posted @ 2018-03-22 19:17  喵小喵~  阅读(129)  评论(0编辑  收藏  举报