Быстрый фон
Я Java-разработчик, который в свое свободное / скучающее время играл с C ++.
Предисловие
В C ++ вы часто видите, что pop принимает аргумент по ссылке:
void pop(Item& removed);
Я понимаю, что приятно "заполнить" параметр тем, что вы удалили. Это полностью имеет смысл для меня. Таким образом, человек, который попросил удалить верхний элемент, может посмотреть, что было удалено.
Однако, если бы я делал это на Java, я бы сделал что-то вроде этого:
Item pop() throws StackException;
Таким образом, после всплывающего окна мы возвращаем либо: NULL, в результате выдается Item или исключение.
В моем учебнике по C ++ показан пример, приведенный выше, но я вижу множество реализаций стека без аргументов (например, стек stl ).
Вопрос
Как реализовать поп-функцию в C ++?
Бонус
Почему?