当前位置:   article > 正文

C++中不使用循环清空一个栈或队列的数据_c++栈归零

c++栈归零

来源:https://stackoverflow.com/questions/40201711/how-can-i-clear-a-stack-in-c-efficiently/40201744

C++STL中有队列queue和栈stack两个模板类,但是这两个类都没有像数组vector一样的clear()函数,传统方法清空一个队列或栈,使用循环:
队列:

queue<int> q;
while(!q.empty())  q.pop();
  • 1
  • 2

栈:

stack<int> s;
while(!s.empty())  s.pop();
  • 1
  • 2

若不使用循环,可以用以下两个方法(以队列为例,栈同理):

q=queue<int>();
  • 1

queue<int>().swap(q);
  • 1
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/不正经/article/detail/405029
推荐阅读
相关标签
  

闽ICP备14008679号