STL stack、queue 操作整理
STL 的一大好处是stack和queue之间可以直接赋值,交换(swap),不用像自己用数组实现,逐元素操作(因为数组间复制只能逐元素复制)
stack & queue
简单介绍几个:
1. operator = 说明可以同类型间赋值操作
2. swap() 操作是交换两个同类型的对象,eg: q1.swap(q2);//q1,q2中的元素全部互换了
3. queue操作多了一个back(),因为队列可以访问最后进入队列的元素,而桟没有,因为桟只可以访问栈顶
4. 注意:pop操作只退桟或退队列,并不返回相应的元素,还是要用top(),front()操作才能得到退出的元素
5. 此外,queue还多了一个emplace()操作
Construct and insert element
Adds a new element at the end of the queue, after its current last element. This new element is constructed in place passing args as the arguments for its constructor.(和push的区别还没查,会的大神可以给讲解下)