棧(stack) C++標准庫函數


1. 基本概念

  棧中的元素遵守“先進后出”的原則(LIFO,Last In First Out)

  只能再棧頂進行插入和刪除操作

  壓棧(或推入、進棧)即push,將數據放入棧頂並將棧頂指針加一

  出棧(或彈出)即pop,將數據從棧頂刪除並將棧頂指針減一

  棧的基本操作有:poppush判斷空獲取棧頂元素求棧大小

 

2. 基本函數

2.1 bool empty() const;

  判斷棧是否為空;

1 stack<int> st;
2 st.empty(); // 棧為空時返回1,非空返回0

2.2 size_type size() const;

  返回棧中元素數量

1 stack<int> st;
2 st.size();

2.3 value_type& top();

  返回棧頂元素

1 stack<int> st;
2 st.top();

2.4 void push( const value_tyoe& val );

  在棧頂插入一個元素

1 stack<int> st;
2 st.push(value);

2.5 void emplace( args&& args );

  在棧頂增加一個元素

1 stack<int> st;
2 st.emplace(value);

2.6 void pop();

  棧頂元素出棧,即刪除棧頂元素

1 stack<int> st;
2 st.pop()

2.7 void swap( stack& x );

  交換兩個棧中的內容

1 stack<int> st1;
2 stack<int> st2;
3 st1.swap( st2 );

2.8 與vector一樣,重載了運算符:==  !=  <  <=  >  >=

 

參考:http://www.cplusplus.com/reference/stack/stack/

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM