在C++中,stack是一种容器,用于存储数据并按照后进先出(LIFO)的顺序访问数据。stack可以存储任何类型的数据,包括内置类型(如int、float)和用户自定义类型。
stack的主要操作包括:
下面是一个使用stack的简单示例:
#include <iostream>
#include <stack>
int main() {
std::stack<int> myStack;
myStack.push(10);
myStack.push(20);
myStack.push(30);
std::cout << "Stack size: " << myStack.size() << std::endl;
std::cout << "Top element: " << myStack.top() << std::endl;
myStack.pop();
std::cout << "Stack size: " << myStack.size() << std::endl;
std::cout << "Top element: " << myStack.top() << std::endl;
return 0;
}
输出结果:
Stack size: 3
Top element: 30
Stack size: 2
Top element: 20
这个示例首先创建了一个整型的stack(std::stack<int> myStack
),然后使用push()
方法将三个元素(10、20、30)依次添加到stack中。然后通过size()
方法获取stack的大小,通过top()
方法获取栈顶元素(30)。接着使用pop()
方法移除栈顶元素,再次使用size()
和top()
方法显示更新后的stack。
请注意,为了使用stack,您需要包含头文件<stack>
。