Здравствуйте, rg45, Вы писали:
К>>Внезапно, есть такая штука, как семантика перемещения!
К>>И у вектора она дешёвая.
R>Только вот вектор не совсем подходит по требованиям underlying контейнера в виду отсутсвия у него функции-члена pop_front (который используется внутри queue::pop). Конечно, этот недостаток можно без особого труда восполнить собственными силами, тем не менее, дополнительное телодвижение сделать нужно.
Ой, точно. Давненько не заглядывал в справочник

Что, однако, не мешает наколхозить.
pop_front() = erase(begin()).
Можно хакнуть STL и сделать специализацию queue<T, vector<T>>.