【侯捷-SL体系结构内核分析-queue和stack探索】
总结
- queue和stack底层默认是由deque实现,所有某种程度上queue和stack不被称为容器,而可以被称为容器queue的adapter。
template<class _Ty,
class _Container = deque<_Ty> >
class queue
{ // FIFO queue implemented with a container
...
_NODISCARD bool empty() const
{ // test if queue is empty
return (c.empty());
}
_NODISCARD size_type size() const
{ // return length of queue
return (c.size());
}
_NODISCARD reference front()
{ // return first element of mutable queue
return (c.front());
}
_NODISCARD const_reference front() const
{ // return first element of nonmutable queue
return (c.front());
}
_NODISCARD reference back()
{ // return last element of mutable queue
return (c.back());
}
_NODISCARD const_reference back() const
{ // return last element of nonmutable queue
return (c.back());
}
void push(const value_type& _Val)
{ // insert ele