queue.size()和queue.pop_front()非常常用,对于如下使用很容易出错,记录一下:
for(int i=0;i<queue.size();i++)
begin
queue.pop_front();
...
end
随着queue的pop,size()大小就变化了,所以这是一段错误的代码,而且很容易忽略;
下面两种方法都可以:
1.
for(int i=0;i<queue.size();i++)
begin
queue[i];
...
end
queue = '{};
2.
int sz= queue.size();
for(int i=0;i<sz;i++)
begin
queue.pop_front();
...
end