ฉันมีปัญหากับคิวในโปรแกรมของฉัน การมีคิวหนึ่งฉันต้องการใช้คิวนี้กับอีก id เท่านั้น นี่คือสิ่งที่ฉันมีตอนนี้:
queue<R> queue;
queue<R> queue2;
...
while (! queue2.empty() )
{
R r = queue2.front();
queue2.pop();
queue.push(r);
}
แต่มันเป็นเส้นตรง ฉันหวังว่าจะสามารถทำได้ในเวลา O(1) ฉันพยายามใช้ข้อมูลอ้างอิงแต่ไม่สำเร็จ
queue = queue2
และqueue = &queue2
แต่มันก็ไม่ดี ฉันต้องการหลีกเลี่ยงการคัดลอกองค์ประกอบทั้งหมด เนื่องจากโปรแกรมของฉันใช้เวลานาน - person JosephConrad   schedule 16.01.2012std::list
ก็เป็นคอนเทนเนอร์ที่แย่ที่สุด ใช้std::deque
ที่นี่ - person GManNickG   schedule 16.01.2012