Я знаю, что std :: queue :: pop ()
возвращает void
. По двум причинам:
Прекрасно.
Теперь, если я правильно понимаю новую семантику перемещения C ++ 11, второй аргумент больше не является допустимым.
Итак ... единственное, что мешает std :: queue
получить pop
-подобную функцию, возвращающую значение, - это возможность того, что конструктор перемещения выбрасывает?
Мне сложно думать о ситуациях, когда такой конструктор ходов бросил бы. Кто знает пример?
Думаю, то же самое касается std :: stack :: pop ()
, std :: vector :: pop_front ()
, std :: vector :: pop_back ()
, std :: deque :: pop_front ()
, std :: deque :: pop_back ()
, std: : list :: pop_front ()
, std :: list :: pop_back ()
и что нет.