Вот реализация стека на C++ вместе с различными методами:
#include <iostream>
#include <vector>
template <typename T>
class Stack {
private:
std::vector<T> elements;
public:
void push(const T& item) {
elements.push_back(item);
}
void pop() {
if (!empty()) {
elements.pop_back();
}
}
T& top() {
return elements.back();
}
bool empty() const {
return elements.empty();
}
int size() const {
return elements.size();
}
};
В этой реализации стек представлен с помощью контейнера std::vector
. Вот предоставляемые методы:
push(const T& item)
: добавляет элемент на вершину стека.pop()
: удаляет самый верхний элемент из стека.top()
: возвращает ссылку на самый верхний элемент в стеке.empty()
: проверяет, пуст ли стек.size()
: возвращает количество элементов в стеке.
Эта реализация обеспечивает базовую функциональность стека в C++. Вы можете расширить его, добавив больше методов или настроив в соответствии со своими требованиями.