C++?stack用法總結(示例詳解)
std::stack 是 C++ 標準模板庫(STL)中的容器適配器,它提供了棧(stack)的功能,基于其他序列容器實現(xiàn)。以下是 std::stack 的用法總結:
包含頭文件:
#include <stack>
創(chuàng)建 std::stack 對象:
std::stack<ElementType> myStack;
ElementType 是棧中元素的類型。 壓入元素到棧中:
myStack.push(element);
彈出棧頂元素:
myStack.pop();
獲取棧頂元素:
ElementType topElement = myStack.top();
檢查棧是否為空:
bool isEmpty = myStack.empty();
獲取棧的大小:
size_t size = myStack.size();
示例:
#include <iostream>
#include <stack>
int main() {
std::stack<int> myStack;
// 壓入元素
myStack.push(10);
myStack.push(20);
myStack.push(30);
// 獲取棧頂元素
std::cout << "Top element: " << myStack.top() << std::endl;
// 彈出棧頂元素
myStack.pop();
// 獲取棧的大小
std::cout << "Stack size: " << myStack.size() << std::endl;
// 遍歷棧(棧沒有迭代器,需要彈出元素直至為空)
while (!myStack.empty()) {
std::cout << myStack.top() << " ";
myStack.pop();
}
std::cout << std::endl;
return 0;
}這是一個簡單的使用 std::stack 的例子。棧是一個后進先出(Last-In-First-Out,LIFO)的數據結構,std::stack 提供了對棧操作的方便接口。在實際應用中,棧常常用于解決問題,例如表達式求值、遞歸問題的迭代實現(xiàn)等。
到此這篇關于C++ stack用法總結的文章就介紹到這了,更多相關C++ stack用法內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

