Saya menggunakan std :: antrian untuk mengimplementasikan kelas JobQueue. (Pada dasarnya kelas ini memproses setiap pekerjaan dengan cara FIFO). Dalam satu skenario, saya ingin menghapus antrian dalam satu kesempatan (hapus semua pekerjaan dari antrian). Saya tidak melihat metode yang jelas tersedia di std :: kelas antrian.
Bagaimana cara saya menerapkan metode yang jelas untuk kelas JobQueue secara efisien?
Saya punya satu solusi sederhana untuk muncul dalam satu lingkaran tetapi saya mencari cara yang lebih baik.
//Clears the job queue
void JobQueue ::clearJobs()
{
// I want to avoid pop in a loop
while (!m_Queue.empty())
{
m_Queue.pop();
}
}
deque
mendukung clear