Почему мы используем & для функции gettop ?
Всем привет
Я изучал C++, ADT Stack, и есть две функции, которые я путаю.
Я написал коды выше , мой вопрос таков:
мы используем & при использовании функции bool pop b/c мы меняем стек, но
почему мы используем & для функции getTop ? мы просто извлекаем верхнюю часть стека, но не меняем ее, верно ?
Что я уже пробовал:
bool pop(StackItemType& stackTop);
// Извлекает и удаляет верхнюю часть стека
// Предварительное Условие: Нет.
// Postcondition: если стек не пуст,
// stackTop содержит элемент, который был добавлен
// совсем недавно и этот элемент был удален.
// Однако, если стек пуст, удаление
// невозможно, а stackTop остается неизменным.
----------------------------------------------------
bool getTop (StackItemType& stackTop) const;
// Извлекает верхнюю часть стека.
// Предварительное Условие: Нет.
// Postcondition: если стек не пуст,
// stackTop содержит элемент, который был добавлен
// последний раз. Однако, если стек
// пусто, операция завершается неудачей и stackTop
// неизменный. Стек остается неизменным.