Что такое стек?
Бифштекс.
Стек это такое хранилище данных. Оно работает по принципу Первым Вошел-Последним Вышел.
В стеке обычно передают данные из одной процедуре в другую. Именно благодаря стеку возможны многократно вложенные подпрограммы.
Но стек иногда переполняется и это может привести к непредсказуемым последствиям, обычно зависанию. Переполнение стека также используется хакерами для взлома (на самом деле при определенных условиях предсказать поведение системы возможно).
Стек — это адаптер (container adaptor), который предоставляет ограниченное подмножество всей функциональности контейнера. Термин адаптер в применении к структуре данных STL означает, что она реализована на основе какой-то другой структуры. По умолчанию стек основан на контейнере типа deque, но при объявлении можно явно указать и другой тип контейнера. Стек поддерживает вставку, удаление и инспекцию элемента, расположенного в первой (top) позиции контейнера. Стек не допускает итераций прохода по своим элементам. Говорят, что стек является структурой данных с дисциплиной доступа "last in first out" (LIFO). Вверху стека расположен элемент, который был помещен в него последним. Только он и может быть выбран в настоящий момент. При отладке следующего фрагмента не забудьте вставить директиву #include <stack>:
[ссылка заблокирована по решению администрации проекта]
Понятие обратное очереди. В очереди кто первым пришел, тот раньше уйдет, а в стеке первым уйдет тот, кто пришел последним.
Ошибочно путать слова "СТЕК" и "СТЕЙК". К куску прожаренного мяса, первое никакого отношения не имеет в корне. Речь идёт о атрибутике BDSM, а именно плётки, которой пользуются доминирующие, применяя её к своим "нижним" партнерам