Ну, я думаю, это потому, что clear
не считался допустимой операцией для очереди, priority_queue или стека (кстати, deque - это не адаптер, а контейнер).
Единственная причина использовать контейнер
очередь адаптера вместо контейнера
Deque, чтобы дать понять, что вы
выполнение только операций с очередями и
других операций нет. (со страницы sgi в очереди)
Таким образом, при использовании очереди все, что вы можете сделать, это элементы push / pop; очистка очереди может рассматриваться как нарушение концепции FIFO. Следовательно, если вам нужно очистить свою очередь, возможно, это не совсем очередь, и вам лучше использовать деку.
Тем не менее, эта концепция вещей немного ограничена, и я думаю, что очистка очереди, как и вы, достаточно справедлива.