A queue is a type of STL container. It's like an array but it's size can be changed dynamically. Also you may only add an object to the end of a queue and you may only remove first object in the queue. This is an efficient form of a first-in-first-out container.