天天看點

STL之std::queue

std::queue沒有提供clear的接口。我們可以如下實作:

方法一

直接用空的隊列對象指派

queue<int> q;

q = queue<int>();
           

方法二

周遊隊列

while (!q.empty())
{
     q.pop();
}
           

方法三

使用swap,這種是最高效的,定義clear函數,保持STL容器的标準。

void clear(queue<int>& q) 
{
    queue<int> empty;
    swap(empty, q);
}