C++ STL容器——stack用法介紹
stack是一種容器介面卡,專門設計用於在LIFO上下文中操作(後進先出),其中元素僅從容器的一端插入和刪除。
容器介面卡,而不是一種容器。
它是容器介面卡是指,只要支援一系列方法的容器(empty, size, back, push_back, pop_back),都能作為stack使用。
stack 有可能實際上是一個 vector, deque 或 list. 如果沒有特殊指明,將使用 deque作為stack的實際容器。
成員函式
empty()
測試棧是否為空,為空返回true,否則返回false。
bool empty() const;
size()
返回棧中元素的個數
size_type size() const;
top()
返回棧頂元素(最後push進來的那個)的引用。
referenc& top();
push(val)
壓一個值到棧中,其值將被初始化為 val
void push(const value_type& val);
pop()
將棧頂元素彈出,注意這個函式無返回值,如果需要獲取棧頂元素,應先呼叫top(),再pop()
swap()
swap將兩個 stack的內容交換。這兩個 stack的模板引數 T和 Container必須都相同。
void swap(stack& x)過載1:x.swap(y)
void swap(stack& x, stack& y) 過載2: swap(x, y)
Linux公社的RSS地址 :https://www.linuxidc.com/rssFeed.aspx
本文永久更新連結地址:https://www.linuxidc.com/Linux/2019-02/156710.htm