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();
獲取棧的大?。?/p>
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)的數(shù)據(jù)結構,std::stack
提供了對棧操作的方便接口。在實際應用中,棧常常用于解決問題,例如表達式求值、遞歸問題的迭代實現(xiàn)等。
到此這篇關于C++ stack用法總結的文章就介紹到這了,更多相關C++ stack用法內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
C++ 類中有虛函數(shù)(虛函數(shù)表)時 內存分布詳解
下面小編就為大家?guī)硪黄狢++ 類中有虛函數(shù)(虛函數(shù)表)時 內存分布詳解。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-12-12