我使用std::queue来实现JobQueue类。(这个类基本上以FIFO的方式处理每个作业)。在一个场景中,我想一次性清除队列(从队列中删除所有作业)。我在std::queue类中看不到任何清晰的方法。
如何有效地实现JobQueue类的clear方法?
我有一个在循环中弹出的简单解决方案,但我正在寻找更好的方法。
//Clears the job queue
void JobQueue ::clearJobs()
{
// I want to avoid pop in a loop
while (!m_Queue.empty())
{
m_Queue.pop();
}
}
https://stackoverflow.com/questions/709146
复制相似问题