std::deque(双端队列):
定义:
实现接口:
接口:
max_size 可以容纳的最大元素个数,为resize提供帮助,是根据成员类型和可以访问的虚拟内存的大小计算出来的。
Member functions
constructs the deque (public member function) | |
destructs the deque (public member function) | |
assigns values to the container (public member function) | |
assigns values to the container (public member function) | |
returns the associated allocator (public member function) | |
Element access | |
access specified element with bounds checking (public member function) | |
access specified element (public member function) | |
access the first element (public member function) | |
access the last element (public member function) | |
Iterators | |
returns an iterator to the beginning (public member function) | |
returns an iterator to the end (public member function) | |
returns a reverse iterator to the beginning (public member function) | |
returns a reverse iterator to the end (public member function) | |
Capacity | |
checks whether the container is empty (public member function) | |
returns the number of elements (public member function) | |
returns the maximum possible number of elements (public member function) | |
(C++11)
| reduces memory usage by freeing unused memory (public member function) |
Modifiers | |
clears the contents (public member function) | |
inserts elements (public member function) | |
(C++11)
| constructs element in-place (public member function) |
erases elements (public member function) | |
adds elements to the end (public member function) | |
(C++11)
| constructs elements in-place at the end (public member function) |
removes the last element (public member function) | |
inserts elements to the beginning (public member function) | |
(C++11)
| constructs elements in-place at the beginning (public member function) |
removes the first element (public member function) | |
changes the number of elements stored (public member function) | |
swaps the contents (public member function) |
std::queue(队列):
定义:
实现接口:
queue的三个主要操作接口:
push <--> 调用deque的push_back来实现;
pop <--> 调用deque的pop_front来实现;
front <--> 调用deque的front来实现;
back <--> 调用deque的back来实现;
Member functions
constructs the queue (public member function) | |
destructs the queue (public member function) | |
assigns values to the container adaptor (public member function) | |
Element access | |
access the first element (public member function) | |
access the last element (public member function) | |
Capacity | |
checks whether the underlying container is empty (public member function) | |
returns the number of elements (public member function) | |
Modifiers | |
inserts element at the end (public member function) | |
(C++11)
| constructs element in-place at the end (public member function) |
removes the first element (public member function) | |
swaps the contents (public member function) |
std::stack(栈):
定义:
实现接口:
栈的三个主要操作接口:
push <--> 调用deque的push_back来实现;
pop <--> 调用deque的pop_back实现;
top <--> 调用deque的back实现;
Member functions
constructs the queue (public member function) | |
destructs the queue (public member function) | |
assigns values to the container adaptor (public member function) | |
Element access | |
access the first element (public member function) | |
access the last element (public member function) | |
Capacity | |
checks whether the underlying container is empty (public member function) | |
returns the number of elements (public member function) | |
Modifiers | |
inserts element at the end (public member function) | |
(C++11)
| constructs element in-place at the end (public member function) |
removes the first element (public member function) | |
swaps the contents (public member function) |
由定义我们就可以看出 queue和stack都是基于deque实现的!