在C++中,stack是一種容器,用于存儲(chǔ)數(shù)據(jù)并按照后進(jìn)先出(LIFO)的順序訪問(wèn)數(shù)據(jù)。stack可以存儲(chǔ)任何類型的數(shù)據(jù),包括內(nèi)置類型(如int、float)和用戶自定義類型。
stack的主要操作包括:
下面是一個(gè)使用stack的簡(jiǎn)單示例:
#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;
}
輸出結(jié)果:
Stack size: 3
Top element: 30
Stack size: 2
Top element: 20
這個(gè)示例首先創(chuàng)建了一個(gè)整型的stack(std::stack<int> myStack
),然后使用push()
方法將三個(gè)元素(10、20、30)依次添加到stack中。然后通過(guò)size()
方法獲取stack的大小,通過(guò)top()
方法獲取棧頂元素(30)。接著使用pop()
方法移除棧頂元素,再次使用size()
和top()
方法顯示更新后的stack。
請(qǐng)注意,為了使用stack,您需要包含頭文件<stack>
。