在C++中,stack是一种容器,用于存储数据并按照后进先出(LIFO)的顺序访问数据。stack可以存储任何类型的数据,包括内置类型(如int、float)和用户自定义类型。
stack的主要操作包括:
push(elem):将元素elem添加到栈的顶部。pop():从栈的顶部移除一个元素。top():返回栈顶部的元素,但不将其从栈中移除。empty():检查栈是否为空。size():返回栈中元素的数量。下面是一个使用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: 3Top element: 30Stack size: 2Top element: 20这个示例首先创建了一个整型的stack(std::stack<int> myStack),然后使用push()方法将三个元素(10、20、30)依次添加到stack中。然后通过size()方法获取stack的大小,通过top()方法获取栈顶元素(30)。接着使用pop()方法移除栈顶元素,再次使用size()和top()方法显示更新后的stack。
请注意,为了使用stack,您需要包含头文件<stack>。

